错误时转换为列出

问题描述:

WCF错误时转换为列出

public List<string> getClientes() 
{ 
     using (var context = new Model.CivarTransporteModelContainer()) 
     { 
      return context.Cliente.Select(x => x.CLNombre).ToList(); 
     } 
} 

的.cs

[OperationContract] 
List<string> getClientes(); 

Web App的ASPX.cs

if (Request.QueryString["getClientes"] != null) 
{ 
    CivarTransporteService.View.CatalogsService wsclient = new CivarTransporteService.View.CatalogsService(); 

    List<CivarTransporteService.View.CatalogsService> clientList = wsclient.getClientes().ToList(); 
} 

我在这行代码

得到一个错误
wsclient.getClientes().toList(); 

无法隐式转换类型system.collections.generic.list <字符串>到system.collections.generic.list < CivarTransporteService.View.CatalogsService>

我应该怎么做才能把它转换?

你的方法返回List<string>,而你是分配给它的参考,即List<CivarTransporteService.View.CatalogsService>一些其他类型的列表,更改行:

List<CivarTransporteService.View.CatalogsService> clientList =wsclient.getClientes().ToList(); 

到:

List<string> clientList =wsclient.getClientes().ToList(); 

,你也不要需要ToList()在它的末尾只是wsclient.getClientes()是好的,因为你已经从服务返回List<T>

所以这将是:

List<string> clientList =wsclient.getClientes();