C# で WCF を構築し、同時にそれを使用するクライアントを構築しています。何らかの理由で、int を返すメソッドを取得するのに問題があります。これが私の契約です:
[ServiceContract]
public interface IMData
{
[OperationContract]
int ReturnAnInt();
[OperationContract]
String HelloWorld();
}
これが私が実装した場所です:
public class MData : IMData
{
public String HelloWorld()
{
return "Hello World";
}
public int ReturnAnInt()
{
return 5;
}
}
私は Visual Studio を使用しています。クライアント用に、この WCF を Web 参照としてインポートしました。何らかの理由で、MData のインスタンスを宣言して HelloWorld を呼び出そうとすると、問題はありませんが、ReturnAnInt を呼び出すとコンパイル エラーが発生します。
MData m = new MData();
String helloWorld = m.HelloWorld();
int result = m.ReturnAnInt();
ReturnAnInt で発生するエラーは次のとおりです。
void MData.ReturnAnInt(out int ReturnAnIntResult, out bool ReturnAnIntResultSpecified)
私は何時間もこの壁に頭をぶつけていましたが、Google では何も見つかりませんでした。同僚も困惑しています。定義にない 2 つの out パラメータを追加し、戻り値の型を変更したのはなぜですか? どんな助けでも大歓迎です。参考になる情報がありましたら、申し訳ありません。