WCF テスト クライアントを使用して、構築した WCF サービスをテストしようとしています。
このサービスには、「SubmitRequest」という 1 つのメソッドがあります。
[OperationContract]
Response SubmitRequest(Request request);
WCF テスト クライアントをロードすると、メソッドがグレー表示され、「この操作は WcfLibrary.Objects.Request 型を使用しているため、WCF テスト クライアントではサポートされていません」というメッセージが表示されます。
以下は型定義です。誰かが何か間違っていると思いますか?
[DataContract]
public class Request
{
[DataMember]
public string LoanNumber { get; set; }
[DataMember]
public string ClientCode { get; set; }
[DataMember]
public Region Region { get; set; }
[DataMember]
public RequestType RequestType { get; set; }
[DataMember]
public List<RequestParameter> RequestParameters { get; set; }
[DataMember]
public List<MspWebCallType> MspWebCallsForXmlRequest { get; set; }
[DataMember]
public Hashtable XmlRequestParameters { get; set; }
public Request(string loanNumber, string clientCode, Region region, RequestType requestType, List<RequestParameter> requestParameters)
{
LoanNumber = loanNumber;
ClientCode = clientCode;
Region = region;
RequestType = requestType;
RequestParameters = requestParameters;
}
}
[DataContract]
public class MspWebCallType
{
[DataMember]
public string WebService { get; set; }
[DataMember]
public string Operation { get; set; }
[DataMember]
public string Version { get; set; }
[DataMember]
public Hashtable Parameters { get; set; }
[DataMember]
public Msp.FavReadViews FAVReadViewIndicator { get; set; }
[DataMember]
public Msp.DsReadIndicators DSReadInidicator { get; set; }
}
[DataContract]
public enum Region
{
[EnumMember]
P2,
[EnumMember]
PROD
}
[DataContract]
public enum RequestType
{
[EnumMember]
None,
[EnumMember]
XmlRequest,
[EnumMember]
SomeOtherRequestType
}
[DataContract]
public struct RequestParameter
{
[DataMember]
public string ParameterName { get; set; }
[DataMember]
public string ParameterValue { get; set; }
}
ありがとう。
EDIT w/ answer...
タイプ MspWebCallType にタイプ Hashtable のプロパティがあったため、操作は WCF テスト クライアント経由で利用できませんでした。このプロパティを削除すると、問題が修正されました。みんなの助けに感謝します。