0
DataContract爲: -傳遞對象參數WCF
namespace AssemblyA
{
public class Person
{
public string FirstName {get;set;}
public string LastName {get;set;}
}
}
服務如下: -
[ServiceContract]
public interface IServer
{
[OperationContract]
Person GetPerson();
[OperationContract]
Person UpdatePerson(Person person)
}
客戶端: -
using AssemblyA;
namespace AssemblyB
{
class Program
{
static void Main(string[] args)
{
IServer server = factory.CreateChannel();
Person person = server.GetPerson();
person.FirstName = "Kilroy";
person.LastName = "";
Person p = server.UpdatePerson(person);
String str = p.LastName;
}
}
}
我有兩個問題: -
我將LastName屬性設置爲空白並調用GetPerson方法。之後,當我檢查姓氏屬性時,它將作爲沒有而不是空白。
第二個問題是,如果我在Person類做如下改變: -
public class Person { String _FirstName; String _LastName; public string FirstName { get{} set { _FirstName=value; _LastName="XYZ"; } } public string LastName { get;set; } }
這之後,我改變了我的客戶是: -
IServer server = factory.CreateChannel();
Person person = server.GetPerson();
person.FirstName = "Kilroy";
person.LastName = "abc";
Person p = server.UpdatePerson(person);
String str = p.LastName;
然後在海峽就說明「XYZ」而不是「abc」。但我期待從它「abc」。
請指教,因爲我必須在我的項目中使用它。
是完整的代碼? Person類的DataContract屬性在哪裏? – diggingforfire 2011-12-26 11:56:58
你真的需要在評論中發表評論,而不是在你的問題細節中。它真的讓你的問題變得模糊不清,並且使未來任何人都很難找出問題和解決方案。 – jlafay 2011-12-26 16:49:04