ASP.NET Core返回

钨丝

我正在使用Microsoft Northwind示例数据库。我搭建了数据库,除了下面的代码,其他所有东西都可以正常工作

我想按以下逻辑工作:

select * from Products
join Suppliers
   on Products.customer_id = Suppliers.customer_id
where Products.customer_id = 1

我试图用LINQ进行此SQL查询(VS 2019中没有错误):

    public async Task<IActionResult> Index()
    {
         var test = await (from ep in _context.Products
                 join e in _context.Suppliers on ep.SupplierId equals e.SupplierId
                 where (e.SupplierId == 1)
                 select new
                 {ep.ProductName,e.CompanyName}).ToListAsync();
    }
    return View(test);

启动项目并转到索引后出现错误:

InvalidOperationException:传递到ViewDataDictionary的模型项的类型为'System.Collections.Generic.List 1[<>f__AnonymousType11 [System.String]]',但是此ViewDataDictionary实例需要类型为'System.Collections.Generic.IEnumerable`1 [ DbFirst.Models.Northwind.Products]”。

以防万一,我是说这段代码很好用,但这不是我所需要的:

public async Task<IActionResult> Index()
{
    var test = await _context.Products.Where(x => x.SupplierId == 1).ToListAsync();

    return View(test);
}
瑞安

大卫是正确的。IEnumerable<Product>您的视图会在您的操作返回匿名类型列表时收到。

您可以为视图创建一个特定的ViewModel:

public class ProductViewModel
{
    public string ProductName{ get; set; }
    public string CompanyName{ get; set; }
}

然后,修改动作代码以返回 List<ProductViewModel>

public async Task<IActionResult> Index()
{
     var test = await (from ep in _context.Products
             join e in _context.Suppliers on ep.SupplierId equals e.SupplierId
             where (e.SupplierId == 1)

             select new ProductViewModel
             {  
                ep.ProductName,
                e.CompanyName
             }).ToListAsync();
}
return View(test);

最后,修改@model索引视图:

@model IEnumerable<ProductViewModel>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

ASP.NET Core 1.0 Web API不返回XML

来自分类Dev

ASP.NET Core HTTPRequestMessage返回奇怪的JSON消息

来自分类Dev

如何使ASP.NET Core返回XML结果?

来自分类Dev

从Asp.Net Core Controller返回IAsyncEnumerable <T>和NotFound

来自分类Dev

从ASP .NET Core Web API方法返回完整的XML响应

来自分类Dev

ASP.NET Core 3.1选择标记返回null

来自分类Dev

ASP.NET Core 3.1区域返回404

来自分类Dev

Moq + xunit + asp.net core:服务返回空值

来自分类Dev

控制 ASP.Net Core 2.0 的 SerializerSettings 返回 IActionResult

来自分类Dev

Asp.Net Core - 无缘无故返回 500

来自分类Dev

ASP.Net Core 从构造函数返回结果

来自分类Dev

从ASP.NET Core 2.2迁移后,ASP.NET Core 3.1.1 Jwt重定向而不是返回HTTP状态401

来自分类Dev

来自Extranet的请求时ASP.NET .Net Core IIS返回502

来自分类Dev

ASP.Net/ASP.NET Core Web API的未授权请求返回302重定向响应,而不是401

来自分类Dev

ASP.NET-Core嵌套的ASP TagHelper

来自分类Dev

ASP.NET Core WebSockets

来自分类Dev

ASP.NET Core WebApi向AngularJS $ http Promise返回错误消息

来自分类Dev

ASP.NET Core API仅返回列表的第一个结果

来自分类Dev

使用ASP.Net Core中的Authorize属性返回HTTP 403

来自分类Dev

如何在ASP.NET Core中返回401而不是302?

来自分类Dev

返回时,ASP .NET Core Cookie身份验证过期从时间戳更改为“会话”

来自分类Dev

为什么我的ASP.Net Core Web API控制器不返回XML?

来自分类Dev

如何对返回匿名对象的ASP.NET Core MVC控制器进行单元测试?

来自分类Dev

单选按钮上的模型绑定对该属性返回null(ASP.NET Core)

来自分类Dev

返回“ application / xml”而不是“ text / plain” ASP.NET Core Web API

来自分类Dev

HttpPost操作中的ASP.Net Core CreatedAtAction返回201,但整个请求以500结尾

来自分类Dev

AuthorizeAttribute返回ASP.net Core中的自定义值(无替代)

来自分类Dev

您是否从ASP.Net Core中的存储库返回ObjectResult

来自分类Dev

如何在Asp.Net Core的JsonResult中返回错误状态?

Related 相关文章

  1. 1

    ASP.NET Core 1.0 Web API不返回XML

  2. 2

    ASP.NET Core HTTPRequestMessage返回奇怪的JSON消息

  3. 3

    如何使ASP.NET Core返回XML结果?

  4. 4

    从Asp.Net Core Controller返回IAsyncEnumerable <T>和NotFound

  5. 5

    从ASP .NET Core Web API方法返回完整的XML响应

  6. 6

    ASP.NET Core 3.1选择标记返回null

  7. 7

    ASP.NET Core 3.1区域返回404

  8. 8

    Moq + xunit + asp.net core:服务返回空值

  9. 9

    控制 ASP.Net Core 2.0 的 SerializerSettings 返回 IActionResult

  10. 10

    Asp.Net Core - 无缘无故返回 500

  11. 11

    ASP.Net Core 从构造函数返回结果

  12. 12

    从ASP.NET Core 2.2迁移后,ASP.NET Core 3.1.1 Jwt重定向而不是返回HTTP状态401

  13. 13

    来自Extranet的请求时ASP.NET .Net Core IIS返回502

  14. 14

    ASP.Net/ASP.NET Core Web API的未授权请求返回302重定向响应,而不是401

  15. 15

    ASP.NET-Core嵌套的ASP TagHelper

  16. 16

    ASP.NET Core WebSockets

  17. 17

    ASP.NET Core WebApi向AngularJS $ http Promise返回错误消息

  18. 18

    ASP.NET Core API仅返回列表的第一个结果

  19. 19

    使用ASP.Net Core中的Authorize属性返回HTTP 403

  20. 20

    如何在ASP.NET Core中返回401而不是302?

  21. 21

    返回时,ASP .NET Core Cookie身份验证过期从时间戳更改为“会话”

  22. 22

    为什么我的ASP.Net Core Web API控制器不返回XML?

  23. 23

    如何对返回匿名对象的ASP.NET Core MVC控制器进行单元测试?

  24. 24

    单选按钮上的模型绑定对该属性返回null(ASP.NET Core)

  25. 25

    返回“ application / xml”而不是“ text / plain” ASP.NET Core Web API

  26. 26

    HttpPost操作中的ASP.Net Core CreatedAtAction返回201,但整个请求以500结尾

  27. 27

    AuthorizeAttribute返回ASP.net Core中的自定义值(无替代)

  28. 28

    您是否从ASP.Net Core中的存储库返回ObjectResult

  29. 29

    如何在Asp.Net Core的JsonResult中返回错误状态?

热门标签

归档