powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Except DataTable
9 сообщений из 9, страница 1 из 1
Except DataTable
    #37115792
Erik_Kartmann
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет друзья!
понадобилось сравнивать табличку в разные моменты времени, и узнавать, какие айдишники появились в более поздний момент времени.
чтоб упростить понимание, возьмём табличку ADDWord со столбцами ID и Word. (интежер и стринг соответственно)
навоял такое:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
           
            DataTable dt1 = new DataTable();
            DataTable dt2 = new DataTable();

            dt1 = new DataTable();
            dt1.Columns.Add(new DataColumn("ID", typeof(int)));
            dt1.Columns.Add(new DataColumn("Word", typeof(string)));

            dt2 = dt1.Copy();

            var e1 = from c in m_Word.m_Dataset.ADDWord.AsEnumerable()
                     select new { ID = c.Field<Int32>("ID"), Word = c.Field<string>("Word") };
            foreach (var result in e1)
            {
                dt1.Rows.Add(new object[2] { result.ID, result.Word });
            }

            var rez1 = from c in dt1.AsEnumerable()
                       select new { ID = c.Field<Int32>("ID"), Word = c.Field<string>("Word") };
////----------тут процедура заполнения ADDWord новыми данными

            var e2 = from c in m_Word.m_Dataset.ADDWord.AsEnumerable()
                     select new { ID = c.Field<Int32>("ID"), Word = c.Field<string>("Word") };

            foreach (var result in e2)
            {
                dt2.Rows.Add(new object[2] { result.ID, result.Word });
            }


            var rez2 = from c in dt2.AsEnumerable()
                       select new { ID = c.Field<Int32>("ID"), Word = c.Field<string>("Word") };
            var e3 = rez2.Except(rez1);

            foreach (var result in e3)
            {
                MessageBox.Show(result.Word);
                //перебор записей для нужд
            }


            return;
---------------------------------------------------------
SET @@verSION = 'Microsoft SQL Server 2005 - 9.00.3042.00 (Intel X86) Feb 9 2007 22:47:07 Copyright (c) 1988-2005 Microsoft Corporation Standard Edition on Windows NT 6.0 (Build 6002: Service Pack 2) '
...
Рейтинг: 0 / 0
Except DataTable
    #37115794
Erik_Kartmann
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
собственно, как-то проще можно было, да?
...
Рейтинг: 0 / 0
Except DataTable
    #37115817
Фотография bured
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Наверное проще было бы ввести поле CreatedTime типа DateTime
...
Рейтинг: 0 / 0
Except DataTable
    #37115833
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если идентификатор - монотонно возр. последовательность, то просто > max()
...
Рейтинг: 0 / 0
Except DataTable
    #37115882
Erik_Kartmann
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
про дентификатор то я и забыл((
...
Рейтинг: 0 / 0
Except DataTable
    #37115885
Erik_Kartmann
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А про эксцепт мой на ЛИНКЮ что скажете?
Вдруг забредёт кто-нибудь с гугла сюда...
...
Рейтинг: 0 / 0
Except DataTable
    #37115931
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Erik_Kartmann,

Компаре сработало?
...
Рейтинг: 0 / 0
Except DataTable
    #37115946
Erik_Kartmann
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
???
...
Рейтинг: 0 / 0
Except DataTable
    #37115950
ViPRos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Erik_Kartmann,

:):)
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Except DataTable
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]