Я использую NHibernate со службами RIA, следующая ассоциация вызывает у меня проблемы.
User hasMany UserRoleGrants via the property user.Roles
Когда я пытаюсь обновить своего Пользователя, клиент silverlight передает сущность Пользователь на уровень обслуживания, но без заполненного свойства Роли (кажется разумным, поскольку это может быть большая коллекция, поэтому зачем отправлять ее туда и обратно по сети). Это заставляет NHibernate попытаться удалить UserRoleGrants для этого пользователя.
Такое ощущение, что я хочу сделать эквивалент session.Load, но только для свойства user.Roles, а не для всего объекта.
Как мне этого добиться?
Редактировать: вот мое беглое отображение
public UserMap()
{
Id(x => x.Id).GeneratedBy.HiLo("10000");
Map(x => x.UserName).Unique().Not.Nullable().Length(255).Default(string.Empty);
HasMany(x => x.RoleGrants).KeyColumn("User_id").Cascade.None().Access.CamelCaseField().LazyLoad();
}
Спасибо