我添加以下代码以便调用SP并将其返回到List
中public IQueryable<Entities.Customer> AllCustomerRanges(int CId, int ItemID)
{
List<Entities.Customer> c = myDataContext.spCustomerRanges(CId, ItemID).ToList();
}
这给了我错误:
无法隐式转换类型'System.Collections.Generic.List&lt; spCustomerRangesResult&GT;”到'System.Collections.Generic.List&lt; Entities.Customer&gt;'
现在我没有类spCustomerRangesResult但是经过一些研究我很困惑,如果我做错了什么或者我是否需要实现一个具有Customer类具有的所有属性的类(听起来有点长篇大论)或者如果我刚刚犯了错误。
我是怎么调用SP来显示列表中的数据的?
答案 0 :(得分:1)
基于sp结果自动生成的新类spCustomerRangesResult,你应该将它转换为Entities.Customer,如下所示:
public IQueryable<Entities.Customer> AllCustomerRanges(int CId, int ItemID)
{
var c = myDataContext.spCustomerRanges(CId, ItemID).ToList();
if (c == null)
return null;
var customers = c.Select(a => new Entities.Customer
{
FirstName=a.spResultFirstName,
LastName = a.spResultLastName
//this just example conversion, change it as needed.
});
return customers;
}
请注意,我返回IQueryable,即使您在使用ToList()但仍然返回IQuerybale时采用的方法可能不需要。我不知道所有细节,所以这只是为了展示如何转换,但整个方法可能需要重新分解。