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

前端之家收集整理的这篇文章主要介绍了asp.net-mvc-3 – 从JsonResult MVC3 / Razor中动态显示表/列表数据?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个视图页面,users.cshtml.我有一个JsonResult动作方法,jsongetusers()返回json格式的用户列表.

在users.cshtml页面加载后,我想得到用户列表,构建一个表并显示它.使用Razor的ASP.Net MVC中最好的方法是什么?我对MVC3和Razor很新.我最初的想法是循环遍历json结果,并使用javascript / jquery构建一个表并将其附加到DOM.但是我猜想这样做一定要有更好的方法吗?

谢谢.

解决方法

正如Mystere Man所建议的那样,先获得一个视图,然后再次进行ajax调用,以获得json结果在这种情况下是不必要的.那是对服务器的2个调用.我想你可以在第一次调用中直接返回用户的HTML表.

我们将这样做.我们将有一个强类型的视图,它会将用户列表的标记返回到浏览器,并且这个数据由我们将使用http请求从我们的浏览器调用的动作方法提供.

用户提供viewmodel

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

}

并且在您的控制器中有一个方法获取用户列表

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>

全部现在,您可以访问像您的域/用户/列表这样的URL,它将为您提供HTML表中的用户列表.

猜你在找的asp.Net相关文章