我想製作一個包含實體的DTO。我應該怎麼做?可能嗎?如何在Silverlight中將實體和實體集合放入DTO中 - WCF RIA?
例如,我有這樣的事情在我的服務器項目:
public class MyCustomDTO
{
[Key]
public int id { get; set; }
public EntityCollection<MyEntity> list { get; set; }
public MyEntity2 dummyproperty { get; set; }
public string name{ get; set; }
}
但在客戶端只生成的基本類型,以及收集和MyEntity2類型的屬性是沒有的。
我的目標是封裝了幾個不同的企業合併形成一個DTO,而不是用多個異步查詢,收集他們...
或者有什麼不同的解決方案可能是適合這種情況?我是否缺少某些東西(某些屬性),或者只是不支持?
我試過了,但後來我得到一個錯誤,說「DomainService中的實體沒有定義鍵,DomainService操作暴露的實體必須至少有一個標有KeyAttribute的公共屬性」所以就像我在這裏讀過的http ://forums.silverlight.net/t/202531.aspx,RIA域服務只能與實體一起工作,所以你不能只發送一個複雜類型,只能作爲實體的一部分。 –
您需要爲Silverlight安裝WCF RIA SP1,我只需更新我的答案。 – Ekk
我做了,但仍然沒有工作。我想因爲我的DomainService是一個LinqToEntitiesDomainService我只是不能發回任何其他的實體。我應該做另一個不是從LinqToEntitiesDomainService繼承的DomainService嗎? (我的當前域服務是從.edmx文件生成的,並且在將服務類部分化後,我用自定義查詢將其擴展爲單獨的文件) –