1

我在 asp.net MVC 中有一个存储库

我调用存储过程来获取对象的存储库,但是我得到了Objects.ObjecResult<result>并且我不知道如何将它变成生产者对象

 Entities enteties = new Entities();
 Product contact = (Product)enteties.uspGetProduct(productId);

我收到以下错误无法将类型“System.Data.Objects.ObjectResult”转换为“Models.Product”

4

2 回答 2

0

我会这样做的方式是:

如果您的存储过程返回一个 Product 类型的元素

Entities enteties = new Entities();
var data = enteties.uspGetProduct(productId).GetEnumerator();
if(data.MoveNext())
    Product contact = enteties.uspGetProduct(productId).GetEnumerator().Current;
于 2020-02-25T21:11:13.177 回答
0

在实体框架中使用存储过程时,它会返回ObjecResult<result>,因此您需要将其转换为所需的类型。您可以使用 Select 运算符进行转换,如下所示:

return query.Select(x=> new Product {
// Assign properties here 
Id = x.Id
}).ToList()
于 2015-10-27T15:38:23.280 回答