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 回答
3

在连接到 WCF 引用时更改其使用的集合类型。这可以在您创建或编辑参考时完成。为方便起见,请参阅随附的屏幕截图:

在此处输入图像描述

于 2013-05-23T09:45:36.330 回答