Я работаю с Entity Framework. Это мой код для получения галереи из БД. Как вы видете
в разделе выбора я создаю новый экземпляр галереи модели представления (VM_Gallery).
статическая защита только для чтения Func>
compiledGetGallery = CompiledQuery.Compile> (
(EFDB, IdGallery, idAccountUser) =>
from Gallery in EFDB.galleries
where
(...)
select new VM_Gallery()
{
CreationDate = Gallery.creationDate,
Description = Gallery.description,
IdGallery = Gallery.idGallery,
ImgCoverPhoto = Gallery.imgCoverPhoto,
Title = Gallery.title
});
Моя проблема в том, что когда мне нужно изменить или добавить новое свойство в объект базы данных, я должен изменить все
Линк. Есть ли способ избежать этого?
Я думал что-то вроде:
статическая защита только для чтения. Func (...)
from Gallery in EFDB.galleries
where
(...)
select Convert_Gallery_VM_Gallery (Gallery)
);
public static VM_Gallery Convert_Gallery_VM_Gallery(Gallery gallery)
{
VM_Gallery VM_Gal = new VM_Gallery();
VM_Gal.CreationDate = gallery.creationDate;
VM_Gal.Description = gallery.description;
VM_Gal.IdGallery = gallery.idGallery;
VM_Gal.ImgCoverPhoto = gallery.imgCoverPhoto;
VM_Gal.Title = gallery.title;
return VM_Gal;
}
Таким образом, если есть изменение в свойстве, мне нужно изменить только одну функцию. Но это не работает, любые идеи.