我想通過wcf服務傳遞/檢索以下類的實例。對象也應該攜帶由它的類定義的方法。可能嗎?假設下面的類:通過WCF服務傳遞和檢索具有方法的類
[DataContract]
public class MyClass
{
[DataMember]
public string Name;
public MyClass()
{
}
public MyClass(string name)
{
this.Name = name;
}
public void SetName(string name)
{
this.Name = name;
}
public string GetName()
{
return this.Name;
}
}
[ServiceContract]
public interface IMyService
{
[OperationContract]
MyClass GetMyClassInstance();
}
public class MyService:IMyService
{
public MyClass GetMyClassInstance()
{
return new MyClass("hello");
}
}
現在,當我在我的客戶端應用程序項目添加到爲MyService參考,數據契約MyClass的,將會產生與服務客戶端一起,說MyServiceClient,所以,我做以下:
MyServiceClient client=new MyServiceClient();
MyClass myClass1= client.GetMyClassInstance();
但我真正的問題是,從服務得到結果後,這是否是可能的(?):
myClass1.SetName("oops!!!");
同時傳輸數據合作ntracts,它們中的方法是否也會被傳輸?我的業務對象也包含方法,它們需要通過WCF傳遞。有沒有辦法?通過WCF傳遞像這樣的BO是一個好習慣嗎? 在此先感謝!
@icryder:謝謝! – Anantha
DataMember不能應用於方法。從MSDN: '[AttributeUsageAttribute(AttributeTargets.Property | AttributeTargets.Field,Inherited = false, \t AllowMultiple = false)] public sealed class DataMemberAttribute:Attribute' –