Silverlight 如何在RIA服务中扩展抽象实体类

Silverlight 如何在RIA服务中扩展抽象实体类,silverlight,entity-framework,ria,Silverlight,Entity Framework,Ria,我想在我的RIA服务项目的基础实体类中添加一个bool变量和属性,这样它在所有实体对象中都可用,但似乎无法解决如何做到这一点。我知道使用.shared.cs和分部类将属性添加到实际实体本身是很容易的,但是使用类似的方法将此类属性添加到实体类是行不通的 例如,以下代码不起作用 namespace System.ServiceModel.DomainServices.Client { public abstract partial class Entity { pri

我想在我的RIA服务项目的基础实体类中添加一个bool变量和属性,这样它在所有实体对象中都可用,但似乎无法解决如何做到这一点。我知道使用.shared.cs和分部类将属性添加到实际实体本身是很容易的,但是使用类似的方法将此类属性添加到实体类是行不通的

例如,以下代码不起作用

namespace System.ServiceModel.DomainServices.Client
{
    public abstract partial class Entity
    {
        private bool auditRequired;
        public bool AuditRequired
        {
            get { return auditRequired; }
            set { auditRequired = value; }
        }
    }
}
所发生的只是现有实体类被完全重写,而不是扩展实体类


如何扩展基本实体类,使功能在不考虑所有派生实体类的情况下可用?

您将无法向实体类添加属性。该类已编译且无法修改(部分类仅起作用,因为您的解决方案中包含该类的源代码,并且可以在编译时合并这些代码)

一个选项可能是创建一个从实体继承的类,然后在此类中添加属性,并让实体从自定义类而不是实体继承。不过,这对于设计师来说可能并不实用

public class MyEntityBase : Entity
{
    private bool auditRequired;
    public bool AuditRequired
    {
        get { return auditRequired; }
        set { auditRequired = value; }
    }
}

public class Entity1 : MyEntityBase
{

}

啊,我想可能是这样的!谢谢你的忠告,我会考虑那样做的。