0

私はwcfサービスでこのような方法を持っています

public string PostAllSurveList(List<Survey> surveyList)
{
    var surveyDbList = ConstructDbServeyList(surveyList);
    foreach (var survey in surveyDbList)
    {
        _db.surveys.Add(survey);
    }
    _db.SaveChanges();
    return "Successfully Saved";
}

次の方法でC#でこのメソッドを呼び出すと、正常に機能します

var surveys = new Survey[]{new Survey{ Id = 1, ConsumerName = "atish"},};

string reply = client.PostAllSurveList(surveys);

しかし、次の方法では機能しません

var surveys = new List<Survey>{ new Survey { Id = 1, ConsumerName = "atish"}};

string reply = client.PostAllSurveList(surveys);

コンパイル時エラーが発生します。

私の質問は、なぜこれが起こるのかです。

4

2 に答える 2

5

WCF サービス参照を作成するときに、コレクションに使用する型を指定できます (サーバー側での宣言方法に依存しません)。あなたの場合、リストではなく配列を使用するようにサービスクライアントが生成されます。

そのサービス参照構成を変更する必要があります。

于 2013-05-23T09:37:30.540 に答える