Переместить данные из одного объекта в другой - PullRequest
0 голосов
/ 29 марта 2012

У меня есть 2 объекта Documents (Id, Number, Content, Date_Added) и Adocuments (архивы документов) (Ida, Number, Content, Date_Added) и я хочу переместить документы (например) с марта в моем архиве сущность. Мои таблицы имеют одинаковые поля.

Выберите деталь

WPF_TestEntities WPFModel;
DateTime init_per = new DateTime(2012, 03, 01);
DateTime fina_per = new DateTime(2012, 03, 31);
var qry = from d in WPFModel.Document // qry - documents form march
          where d.Date_Added >= init_per &&  d.Date_Added <= fina_per
          select d;

Вставить деталь

//WPFModel.Adocument.Insert/Add(qry);

После этого я могу удалить документы марша из объекта Document.

Как я могу переместить данные (qry) из Документов в Документы? (будут ли проблемы с уникальностью моего идентификатора?)

Ответы [ 2 ]

1 голос
/ 29 марта 2012

Вы можете попробовать это:

 WPF_TestEntities WPFModel;
 DateTime init_per = new DateTime(2012, 03, 01);
 DateTime fina_per = new DateTime(2012, 03, 31);
 var qry = from d in WPFModel.Document // qry - documents form march
      where d.Date_Added >= init_per &&  d.Date_Added <= fina_per
      select d;

 foreach (Document doc in qryluna)
     {
      Adocument newadoc = new Adocument();
      newadoc.IdA = doc.Id;
      newadoc.Nr_intern = doc.Nr_intern;
      newadoc.Obiect = doc.Obiect;
      newadoc.Data_Added = doc.Data_Added ;
      WPFModel.Adocument.AddObject(newadoc);
      WPFModel.Document.DeleteObject(doc);
  }
  WPFModel.SaveChanges();
0 голосов
/ 29 марта 2012

вы можете попытаться уменьшить результат элемента из запроса, если он не запустится, вы должны взять каждый элемент и скопировать его в новый объект, а затем сохранить его в таблице истории.Идентификатор может быть проблемой, потому что если вы установили идентификатор как автоинкремент (идентификатор на сервере sql), то, конечно, БД попытается освободить новый идентификатор вместо вашего старого.Самая безопасная задача, которую вы должны выполнить, - опросить первую сущность, взять каждое значение, заполнить новую историческую сущность (связанную с таблицей истории) и сохранить ее.Я полагаю, что у вас может быть вторая таблица (Adocuments) с этими полями:

  • id (идентификатор вашей таблицы)
  • ida (ваш идентификатор скопирован из таблицы Documents, чтобы реально поддерживатьистория)
  • число
  • содержание
  • дата_добавлено

Надеюсь, это полезно для вас:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...