.net - 获取 "Cannot implicitly convert type ' 表 [ ]' to ' Generic.List<>'

标签 .net wcf visual-studio-2010 visual-studio-2008

几年前我写了一个WCF服务,它运行在IIS下的Windows 2003服务器上。我使用 VS 2008 和 .NET 3.5 编写了它。有问题的代码是这样的:

public static List<ASILookupTables> GetLookupTableAux(bool UseProduction)
{
ASIClassesDataContext dcASI = new ASIClassesDataContext();

var result = from lookups in dcASI.ASILookupTables4s
                         orderby lookups.SortOrder
                         select lookups;

List<ASILookupTables> list = new List<ASILookupTables>();

foreach (var item in result)
{
    ASILookupTables alt = new ASILookupTables();
    //more lines to add other elements
    list.Add(alt);
}

return list;
}

现在我正在使用 .NET 4.0 编写一个 VS 2010 应用程序来使用它。 VS 2010 应用程序中有问题的代码片段是这样的:

            LookupSvc.LookupsClient proxy = new LookupSvc.LookupsClient();

        //retrieve list of lookup tables
        List<LookupSvc.ASILookupTables> lookupTables = proxy.GetLookupTableAux(true);

但是,我收到以下错误:

“无法将类型‘AsiEF.LookupSvc.ASILookupTables[]’隐式转换为‘System.Collections.Generic.List’”

我不明白;在 WCF 代码中,在我看来我正在返回一个列表。看起来我没有返回一个数组。是因为WCF服务是.NET 3.5而我的新项目是.NET 4.0吗?

最佳答案

如果您希望代理使用 List<T>,您可以更改服务引用设置或 T[] .

要更改设置,请在解决方案资源管理器中右键单击项目中的服务引用。选择“配置服务引用”。在“收藏类型”中选择 System.Collections.Generic.List .

关于.net - 获取 "Cannot implicitly convert type ' 表 [ ]' to ' Generic.List<>',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9100768/

相关文章:

.net - 用于写入/读取 cabinet (.cab) 文件的托管代码库

.net - 客户端-服务器通信协议(protocol)的架构决策

visual-studio-2010 - VS2010 更新服务引用 * 疯狂* 慢(如 5 分钟)

c# - 使用带有损坏引用的 .net DLL

c# - 参数化 SQL 查询不返回结果,String 格式查询返回正确结果

c# - 检测 WCF 中的套接字断开连接

.net - 为什么 Silverlight 不为我的自定义 ServiceModel.ClientBase<TChannel> channel 的行为调用 AfterReceiveReply?

c# - ComboBox 的助记符

c# - 为什么 Visual Studio 设置都序列化为字符串?

c# - WCF 超时的最大值是多少?