Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 添加存储过程并从服务调用它 我创建了一个简单的存储过程,其中包含一些与customer表和其他相关表的连接,其中包含两个参数。我可以在SQL中执行此SP并正常工作 我将这个SP拖放到我的DBML文件并重新编译_C#_.net_Stored Procedures_Linq To Sql - Fatal编程技术网

C# 添加存储过程并从服务调用它 我创建了一个简单的存储过程,其中包含一些与customer表和其他相关表的连接,其中包含两个参数。我可以在SQL中执行此SP并正常工作 我将这个SP拖放到我的DBML文件并重新编译

C# 添加存储过程并从服务调用它 我创建了一个简单的存储过程,其中包含一些与customer表和其他相关表的连接,其中包含两个参数。我可以在SQL中执行此SP并正常工作 我将这个SP拖放到我的DBML文件并重新编译,c#,.net,stored-procedures,linq-to-sql,C#,.net,Stored Procedures,Linq To Sql,我添加以下代码以调用SP并在列表中返回它 public IQueryable<Entities.Customer> AllCustomerRanges(int CId, int ItemID) { List<Entities.Customer> c = myDataContext.spCustomerRanges(CId, ItemID).ToList(); } public-IQueryable-allcustomerrage(int-CId,int-Ite

我添加以下代码以调用SP并在列表中返回它

public IQueryable<Entities.Customer> AllCustomerRanges(int CId, int ItemID)
{
    List<Entities.Customer> c = myDataContext.spCustomerRanges(CId, ItemID).ToList();

}
public-IQueryable-allcustomerrage(int-CId,int-ItemID)
{
List c=myDataContext.spcustomerrages(CId,ItemID.ToList();
}
这给了我一个错误:

无法将类型“System.Collections.Generic.List”隐式转换为“System.Collections.Generic.List

现在我没有一个类spCustomerRangesResult,但是经过一些研究之后,我很困惑我是否做了一些错误,或者我是否需要用Customer类的所有属性实现一个类(听起来有点冗长),或者我刚刚犯了一个错误


知道如何调用在列表中显示数据的SP吗?

新类spCustomerRangesResult根据SP结果自动生成,您应该将其转换为实体。客户如下:

      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;

        }
public-IQueryable-allcustomerrage(int-CId,int-ItemID)
{
var c=myDataContext.spcustomerrages(CId,ItemID.ToList();
如果(c==null)
返回null;
var customers=c.Select(a=>newentities.Customer
{
FirstName=a.spResultFirstName,
LastName=a.spResultLastName
//这只是一个转换示例,根据需要进行更改。
});
返回客户;
}

请注意,我返回IQueryable,即使使用ToList()时采用的方法,但可能不需要返回IQuerybale。我不知道所有细节,所以这只是为了说明如何转换,但整个方法可能需要重新分解。

我确实看了一下,但我没有使用EF6抱歉,我混淆了EDMX和DMBL(我甚至不知道这是什么),请尝试使用“var c=…”并查看提供给您的属性。spCustomerRangesResult可能具有results属性或value属性,该属性将返回entities.customer。