2012-04-16 108 views
1

我有它返回一个衍生财产的部分类:。包含部分类的派生属性?

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。

非常感谢......

+0

我无法从你的代码中了解'employee'是否是'Consultation'的依赖类。在这种情况下,我相信你也应该加载它。你能从“Consultation”发布更多的代码吗? – 2012-04-16 07:24:27

回答

0

你不急于在Name财产,但你一定渴望负载及其相关导航属性,使其工作。因此,如果您的示例中的employee是导航属性,则您必须急于加载它,否则您的Name属性将依赖于延迟加载和生活环境。

+0

谢谢!急于加载相关员工解决了这个问题。 – user1335596 2012-04-16 16:35:51