2011-02-15 105 views
0

我已经看到这个问题在网络上的各种化身,但从来没有一个明确的答案。因为这是论坛的明确答案....Silverlight - 在客户端中扩展WCF类

我使用WCF为我的Silverlight客户端,基于SQL数据库提供实体对象。

我想仅在客户端扩展此对象的类。我有兴趣创建仅适用于绑定的属性,并且在存储主要对象时没有意义。是否有可能扩展这个类?如果没有,做这种事情有没有“最佳做法”?

感谢, WTS

+0

可能是的。检查生成的类是否具有“部分”修饰符。因为我不确定。 – vorrtex 2011-02-15 18:09:44

回答

1

生成的类实际上有修饰语“部分”,所以它可以扩展它们。

例如,这DataContract:

[DataContract] 
public class TestObject 
{ 
    [DataMember] 
    public int Id { get; set; } 
    [DataMember] 
    public string Title { get; set; } 
} 

可以在客户的身边以这种方式扩展:命名空间的名称的

namespace SilverlightTest.ServiceReference1 
{ 
    public partial class TestObject 
    { 
     public string ExtendedTitle 
     { 
      get { return this.Id+" "+this.Title; } 
     } 
    } 
} 

采取通知,它必须是一样的服务引用的名称空间。

+0

我认为它应该可能作为一个部分类 - 这是我错过的“扩展”命名空间。谢谢! – 2011-02-16 03:29:43