[英]How Can I Extend A Entity When Using RIA Services With Silverlight?
[英]How to extend abstract Entity class in RIA Services
我想向 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; }
}
}
}
所發生的一切是現有的實體類被完全覆蓋而不是擴展實體類。
如何擴展基本實體類,以便在所有派生實體類中都可以使用功能?
您將無法向 Entity 類添加屬性。 此類已編譯且無法修改(部分類僅有效,因為您的解決方案中有該類的源代碼,並且該代碼可以在編譯時合並)。
一種選擇可能是創建一個繼承自 Entity 的類,然后在此類中添加您的屬性,並使您的實體繼承自您的自定義類而不是 Entity。 但是,這對於設計師來說可能不切實際。
public class MyEntityBase : Entity
{
private bool auditRequired;
public bool AuditRequired
{
get { return auditRequired; }
set { auditRequired = value; }
}
}
public class Entity1 : MyEntityBase
{
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.