Как сохранить объект, который содержит и EntitySet? - PullRequest
0 голосов
/ 29 марта 2010

Допустим, у меня есть пользователь (сопоставленный с таблицей пользователей), и в представлении «Правка» (в MVC) отображается множественный список модулей (сопоставленных с таблицей модулей), к которым пользователь может получить доступ, причем модули предварительно выбираются на основе пользовательских EntitySet из модулей.

Я попытался сохранить пользователя, затем вручную удалить все модули User_Modules и добавить их обратно на основе того, что было выбрано при отправке, но у пользователя есть нулевой набор EntitySet для User.User_Modules.

Я не могу найти правильный способ справиться с этим сценарием в любом месте онлайн. Кто-нибудь может помочь?

Редактировать: добавление моего кода EntitySet

private EntitySet<UserModule> _UserModules;
    [Association(Storage = "_UserModules", ThisKey="UserId", OtherKey = "UserId")]
    public EntitySet<UserModule> UserModules
    {
        get { return this._UserModules; }
        set { this._UserModules.Assign(value); }
    }

1 Ответ

0 голосов
/ 29 марта 2010

Попробуйте проверить, загружен ли набор первым

Linq to SQL

DataLoadOptions options = new DataLoadOptions();    
options.LoadWith<User>(c => c.User_Modules);
context.LoadOptions = options;

//Do query and then see if your EntitySet is still null.

Линк к сущности способ ...

if(!User.User_ModulesReference.IsLoaded){
     User.User_ModulesReference.Load();
 }
 //Insert delete logic here...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...