#entity-framework
#entity-framework
Вопрос:
У меня есть модель Entity Framework, сгенерированная на основе базы данных. Мой пользовательский объект имеет следующие свойства: Access, customId, Name. Все они заполняются из базы данных. Однако источник данных для поля Name меняется на веб-службу. Мне нужно будет удалить сгенерированное свойство Name, заменить его пользовательским свойством name и заполнить его из прокси-объекта, который я использую для доступа к веб-службе. Однако, чтобы получить доступ к этому прокси-объекту, мне нужен ControllerContext, в который загружен прокси-объект.
Я перебрал несколько вариантов, но, похоже, ни один из них не работает. Есть идеи?
TIA!
public partial class User
{
public string Name
{
get { return WSCache.GetEmployeeName(this.CustomID); } //WSCache is not loaded!
}
Ответ №1:
В итоге я поместил метод в свой вспомогательный класс и обязательно вызывал его каждый раз, когда мне нужно было извлечь пользовательский объект из базы данных, который заполнял бы пользовательское свойство Name в классе partial.
public partial class User
{
private string _name;
public string Name
{
get { return _name; }
set { _name = value; }
}
}
public static User GetUser(EmployeeCache empCache, ITestRepository repo, string customId)
{
User user = repo.Single<User>(u => u.CustomId== customId);
user.Name = empCache.GetEmployeeName(customId);
return user;
}