gpt4 book ai didi

c# - 将数据传递到 ASP.NET MVC5 中的 Razor View

转载 作者:太空宇宙 更新时间:2023-11-03 22:44:04 24 4
gpt4 key购买 nike

我正在尝试学习 ASP.NET 并尝试一些基本的事情,例如将硬编码数据传递给 Razor View 。

我在模型中有一个简单的类:

public class Customer
{
public int Id { get; set; }
public string Name { get; set; }
}

在我的 CustomersController 中,我有以下代码:基本上,我只是制作一个可枚举的硬编码客户列表,执行一个简单的 get 方法并在/customers 的 get 路由中调用该方法

public class CustomersController : Controller
{
// GET: Customers
public ActionResult Index()
{
var customers = GetCustomers();

return View(customers);
}

public IEnumerable<Customer> GetCustomers()
{
return new List<Customer>
{
new Customer
{
Id = 1,
Name = "Peter Parker"
},

new Customer
{
Id = 2,
Name = "Eddie Brock"
},

new Customer
{
Id = 3,
Name = "Mary Jane"
},
};
}
}
}

在我的 Razor View 中,我引入了模型并尝试遍历客户并将他们打印在列表中。不确定我做错了什么,因为智能不会带来任何问题。我不能像 li 中的 @customer.Name 这样说。如果我将鼠标悬停在 @foreach block 中的 Model.Customer 上,它会说没有客户的定义。

@model Vidly.Models.Customer

@{
ViewBag.Title = "Index";
Layout = "~/Views/Shared/_Layout.cshtml";
}

<ul>
@foreach(var customer in Model.Customers)
{
<li>@customer</li>
}
</ul>

最佳答案

GetCustomers() 方法返回 Customer 对象的集合,您将该集合传递给 View 。因此,您的 View 应该强类型化为集合 Customer 对象。您当前的代码表示它需要一个 Customer 对象。

将其更改为强类型为 Customer 对象的集合,然后在您的 View 中,您可以循环 Model,它是一个集合(你可以遍历一个集合)。

@model List<Vidly.Models.Customer>    
@{
ViewBag.Title = "Index";
Layout = "~/Views/Shared/_Layout.cshtml";
}

<ul>
@foreach(var customer in Model)
{
<li>@customer.Id</li>
<li>@customer.Name</li>
}
</ul>

关于c# - 将数据传递到 ASP.NET MVC5 中的 Razor View,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50808383/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com