在ASP.NET Core 3.0中,你可以使用ViewData或ViewBag来将带有用户信息列表的Enumerable从控制器传递到_layout页面(.cshtml)。
下面是一个示例代码:
在控制器中:
public class HomeController : Controller
{
public IActionResult Index()
{
List users = new List
{
new User { Id = 1, Name = "John" },
new User { Id = 2, Name = "Jane" }
};
ViewData["Users"] = users;
ViewBag.Users = users;
return View();
}
}
在_layout.cshtml页面中:
@{
var usersFromViewData = ViewData["Users"] as List;
var usersFromViewBag = ViewBag.Users as List;
}
Users from ViewData:
@foreach (var user in usersFromViewData)
{
- @user.Name
}
Users from ViewBag:
@foreach (var user in usersFromViewBag)
{
- @user.Name
}
注意,User是一个自定义模型类,你需要根据自己的需要进行相应的更改。
在这个示例中,我们将用户信息列表users存储在ViewData和ViewBag中,并在_layout.cshtml页面中通过强制转换来获取它们。然后,我们可以在页面上使用这些数据来显示用户信息。
希望这个示例能帮助到你!