の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;
}
}
}
私は2つの問題を抱えています
LastNameプロパティを空白に設定し、GetPersonメソッドを呼び出しました。その後、私はLastNameプロパティをチェックしていますが、空白ではなく何も表示されません。それが示しstrの中で、その後
IServer server = factory.CreateChannel(); Person person = server.GetPerson(); person.FirstName = "Kilroy"; person.LastName = "abc"; Person p = server.UpdatePerson(person); String str = p.LastName;
- :この後
public class Person { String _FirstName; String _LastName; public string FirstName { get{} set { _FirstName=value; _LastName="XYZ"; } } public string LastName { get;set; } }
私のように私のクライアントを変更 - を:
第二の問題は、次のように私はPersonクラスの変更を行った場合であります"abc"ではなく "XYZ"。しかし、私はそれから "abc"を期待しています。
私のプロジェクトで使用する必要があるので、アドバイスをしてください。
完全なコードはありますか? PersonクラスのDataContract属性はどこにありますか? – diggingforfire
あなたは_really_あなたの質問の詳細ではなく、コメントにコメントを入れる必要があります。これは本当にあなたの質問を混乱させ、問題を解決するために将来問題を参照する人にとっては、問題と解決策が何であるかを理解することが難しくなります。 – jlafay