オブジェクトをWCFサービスに渡していて、何も戻っていない。実際に作業を行うメソッドに渡される変数をチェックし、その時点でオブジェクトに値が設定されていないことに気付きました。ここでは、オブジェクトがあります:WCFオブジェクトパラメータの値が失われる
[DataContract]
public class Section {
[DataMember]
public long SectionID { get; set; }
[DataMember]
public string Title { get; set; }
[DataMember]
public string Text { get; set; }
[DataMember]
public int Order { get; set; }
}
ここでの方法のためのサービスコードは次のとおりです。
[OperationContract]
public List<Section> LoadAllSections(Section s) {
return SectionRepository.Instance().LoadAll(s);
}
実際にこの方法がこれですとSilverlight XAMLファイルに配置されて呼び出すコード:
SectionServiceClient proxy = new SectionServiceClient();
proxy.LoadAllSectionsCompleted += new EventHandler<LoadAllSectionsCompletedEventArgs>(proxy_LoadAllSectionsCompleted);
Section s = new Section();
s.SectionID = 4;
proxy.LoadAllSectionsAsync(s);
は、
コードが最後にメソッドLoadAllSections(セクションs)に入ると、パラメータのSectionIDは設定されません。私はコードをステップ実行し、IAsyncResultオブジェクトを返す生成コードに入ると、オブジェクトのプロパティが設定されます。しかし、実際にメソッドLoadAllSectionsを呼び出すと、受け取ったパラメータは完全に空白になります。メソッド呼び出しの間に控えめなスティックを作るために設定しなければならないものがありますか?
私はサービスとクライアントの設定を表示できますか?両端の ' 'の部分だけ.... –
datatableは直列化可能ですか? –