是否可以从Web服务填充实体框架自定义属性?

时间:2011-06-08 20:13:03

标签: entity-framework

我有一个数据库优先生成的实体框架模型。我的用户对象具有以下属性:Access,CustomID,Name。所有这些都是从数据库中填充的。但是,“名称”字段的数据源将更改为Web服务。我将需要删除生成的Name属性,将其替换为自定义名称属性,并从我用于访问Web服务的代理对象填充该属性。但是,为了访问该代理对象,我需要加载代理对象的ControllerContext。

我一直在寻找几种选择,但它们似乎都没有用。有什么想法吗?

TIA!

public partial class User
{

    public string Name
    {
        get { return WSCache.GetEmployeeName(this.CustomID); } //WSCache is not loaded!
    }

1 个答案:

答案 0 :(得分:0)

我最终在我的帮助器类中添加了一个方法,并确保每次我需要从数据库中提取User对象时调用它,这将填充部分类中的自定义Name属性。

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;
    }