|
|
|
Не понятное поведение
|
|||
|---|---|---|---|
|
#18+
Любопытный момент: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2009, 00:56 |
|
||
|
Не понятное поведение
|
|||
|---|---|---|---|
|
#18+
SubmitChanges() ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2009, 01:30 |
|
||
|
Не понятное поведение
|
|||
|---|---|---|---|
|
#18+
buredSubmitChanges() ? честно говоря, я не понял... Нашел этот метод у класса DataContext, но не пойму каким боком он тут может сыграть роль... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2009, 10:24 |
|
||
|
Не понятное поведение
|
|||
|---|---|---|---|
|
#18+
Ошибка происходит при попытке добавить строку, у которой уже есть таблица, которой она принадлежит. А если скопировать строку? Так, например: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2009, 12:38 |
|
||
|
Не понятное поведение
|
|||
|---|---|---|---|
|
#18+
SMAKSx86Ошибка происходит при попытке добавить строку, у которой уже есть таблица, которой она принадлежит. А если скопировать строку? Так, например: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. а смысл в этом какой? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2009, 12:44 |
|
||
|
Не понятное поведение
|
|||
|---|---|---|---|
|
#18+
Простите, не сразу осмыслил вопрос. Если посмотреть отладчиком, то видно такой момент: после выполнения строки foreach (DataRow item in myRows) изменяется значение activity.Rows.Count. Как я понял, в момент выполнения запроса стартует какая-то операция, очень похожая на неявную транзакцию(не в смысле транзакции базы данных). Которая должна явно коммитится, как в примере ms-help://MS.VSCC.v90/MS.MSDNQTR.v90.en/dv_linqsql/html/7e26c7eb-c18a-43b5-a8f0-28fd8b04b0f0.htm.(смотрите SubmitChanges()) Но поскольку SubmitChanges() не выполняется явно, то в момент перечисления он выполняется неявно и меняется activity.Rows.Count. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2009, 13:41 |
|
||
|
Не понятное поведение
|
|||
|---|---|---|---|
|
#18+
SMAKSx86Простите, не сразу осмыслил вопрос. Если посмотреть отладчиком, то видно такой момент: после выполнения строки foreach (DataRow item in myRows) изменяется значение activity.Rows.Count. Как я понял, в момент выполнения запроса стартует какая-то операция, очень похожая на неявную транзакцию(не в смысле транзакции базы данных). Которая должна явно коммитится, как в примере ms-help://MS.VSCC.v90/MS.MSDNQTR.v90.en/dv_linqsql/html/7e26c7eb-c18a-43b5-a8f0-28fd8b04b0f0.htm.(смотрите SubmitChanges()) Но поскольку SubmitChanges() не выполняется явно, то в момент перечисления он выполняется неявно и меняется activity.Rows.Count. млин.... я совсем забыл об ленивых вычислениях... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2009, 13:44 |
|
||
|
Не понятное поведение
|
|||
|---|---|---|---|
|
#18+
SMAKSx86, Спасибо, я въехал в чем дело. Правда я работаю с DataSet, а не напрямую с БД. =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2009, 13:53 |
|
||
|
Не понятное поведение
|
|||
|---|---|---|---|
|
#18+
Мдя, косяк-с. Неправильно я понял смысл происходящего. Зато статью нашел на эту тему. Может, пригодится кому: тынц (пример в самом конце статьи) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2009, 13:55 |
|
||
|
Не понятное поведение
|
|||
|---|---|---|---|
|
#18+
Задача была такая (точнее ее часть): из файла екселя качнуть данные, затем разбить их на две слинкованные между собой таблицы. решил сделать это так: залить данные во временную таблу ДатаСета и задействовав линкю выполнить все необходимые операции. Затем полученный результаты сохранить в БД. Юзеры ранее могли для каждой компании указывать только один вид экономической деятельности, а теперь потребовалось несколько. соответственно для этого нужно изменить структуру БД (в моем случае - я имею на руках лишь файл екселя с выборкой в виде единой таблицы). Т.о. я выбираю из поля все виды экономической деятельности, исключая пустые записи и повторения и сохраняю в отдельную таблу. Конечный результат (применительно к примеру данного топика) выглядит так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2009, 14:02 |
|
||
|
|

start [/forum/topic.php?fid=17&msg=35832381&tid=1351932]: |
0ms |
get settings: |
8ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
59ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 238ms |
| total: | 394ms |

| 0 / 0 |
