system.lin.IQueryable不包含';致'
本文关键字:包含 lin IQueryable system | 更新日期: 2023-09-27 18:00:49
我在这个代码中得到一个错误:
这是代码:
public IHttpActionResult Get()
{
var books = unit.Books.All;
var response = books.To<BookDto>();
return Ok(response);
}
就在书上。To((我得到这个错误:
system.lin.IQueryable不包含"To"和
的定义扩展方法"to"接受类型的第一个参数找不到'system.linq.IQueryable'。你错过了一次使用吗指令还是程序集引用?
我看了看,但没有帮助。
IQueryable<T>不包含';包括';并且没有扩展方法';包括';
我使用了System.Data.Entity;而且我已经从NuGet安装了EF,但作为链接中的解决方案,我无法在中获得"QueryableExtensions">
using System.Data.Entity.QueryableExtensions
QueryableExtensions似乎不包含任何名为To
的函数,我也从未听说过这种方法,所以我怀疑您在这方面弄错了树。
您可能需要以下其中一项:
-
图书清单的
var response = books.ToList();
-
var response = books.Cast<BookDto>();
在books
到BookDto
中投射每个对象 -
var response = books.Select(book => new BookDto(book));
从books
构造BookDto
对象的序列。
IQueryable.To<T>
不是一件事。如果你试图转换成不同的类型,你可能需要使用Select
,例如
var response = books.Select(book => new BookDto()); //Insert transformation logic into the new object initialization.
如果你想列出一个清单,那么只需这样做:
var response = books.ToList();