。包含部分类的派生属性?

时间:2012-04-16 06:22:19

标签: entity-framework-4.1 dbcontext

我有一个返回派生属性的部分类:

public partial class Consultation
{
    public string Name
    {
        get
        {
            string n = string.Empty;
            n += employee.FirstName;
            n += " " + employee.LastName;
            return n;
        }
    } 
}

在业务逻辑层函数中,我返回这些实体的列表:

using (var Context = new MMEntities())
{

   var cons = Context.Consultations;
   return cons.ToList();

}

在.aspx页面中,我有一个数据绑定控件,它使用实体的派生属性:

DataTextField="Name"

然而,在编译时我得到:

The ObjectContext instance has been disposed and can no longer be used for operations that require a connection.

我理解我的ObjectContext已被释放,因为我已将其包装在'Using'语句中。

我的问题是:如何在返回方法中包含(急切加载)派生的Name属性? .Include方法仅适用于导航属性,我不想长期使用ObjectContexts。

非常感谢......

1 个答案:

答案 0 :(得分:0)

您并不急于Name属性,但您必须急切加载其相关的导航属性才能使其正常工作。因此,如果您的示例中的employee是导航属性,则必须先加载它,否则您的Name属性将依赖于延迟加载和生存环境。