gpt4 book ai didi

asp.net-mvc-3 - 从 JsonResult 在 MVC3/Razor 中动态显示表/列表数据?

转载 作者:行者123 更新时间:2023-12-03 23:07:21 25 4
gpt4 key购买 nike

我有一个 View 页面,users.cshtml。我有一个 JsonResult 操作方法 jsongetusers() ,它以 json 格式返回用户列表。

在 users.cshtml 页面加载时,我想获取用户列表,构建一个表格并显示它。使用 Razor 在 ASP.Net MVC 中实现这一点的最佳方法是什么?我对 MVC3 和 Razor 很陌生。我最初的想法是遍历 json 结果并使用 javascript/jquery 构建一个表并将其附加到 DOM。但我猜一定有更好的方法来做到这一点?

谢谢。

最佳答案

正如 Mystere Man 所建议的那样,在这种情况下,不需要先获取 View ,然后再次调用 ajax 来获取 json 结果。即对服务器的 2 次调用。我认为您可以在第一次调用时直接返回用户的 HTML 表。

我们将通过这种方式做到这一点。我们将有一个强类型 View ,它将用户列表的标记返回给浏览器,并且此数据由操作方法提供,我们将使用 http 请求从浏览器调用该方法。

有一个 用户的 View 模型

public class UserViewModel
{
public int UserID { set;get;}
public string FirstName { set;get;}
//add remaining properties as per your requirement

}

并在您的 Controller 中有一个方法来获取用户列表
public class UserController : Controller
{

[HttpGet]
public ActionResult List()
{
List<UserViewModel> objList=UserService.GetUsers(); // this method should returns list of Users
return View("users",objList)
}
}

假设 UserService.GetUsers() 方法将返回 UserViewModel 对象的列表,该对象表示数据源(表)中的用户列表

并在您的 users.cshtml (在 Views/User 文件夹下),
 @model List<UserViewModel>

<table>

@foreach(UserViewModel objUser in Model)
{
<tr>
<td>@objUser.UserId.ToString()</td>
<td>@objUser.FirstName</td>
</tr>
}
</table>

所有设置现在您可以访问网址,如 yourdomain/User/List它将为您提供 HTML 表格中的用户列表。

关于asp.net-mvc-3 - 从 JsonResult 在 MVC3/Razor 中动态显示表/列表数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9815455/

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