如何将记录传递给webgrid的html.actionlink中的控制器

时间:2014-12-17 07:04:59

标签: asp.net-mvc-4

我使用下面的webgrid来显示用户详细信息。当我单击网格中的编辑链接时,相应的记录应移至控制器操作方法," EditOfflineUser"。 我试图发送项目值,如下所示。但是控制器中的值为null 请告诉我如何将相应的记录传递给控制器​​。 在下面的代码中,我在控制器中获取userId值。

CSHtml文件

@if (Model.OfflineUserList.Count != 0)
{
   WebGrid gridoffline = new WebGrid(rowsPerPage: 10, canPage: true);
    gridoffline.Bind(Model.OfflineUserList, autoSortAndPage: true, rowCount: 10);
    @gridoffline.GetHtml(
    fillEmptyRows: false,
    tableStyle: "table",
    headerStyle: "header",
    alternatingRowStyle: "alt",
    htmlAttributes: new { id = "wbgUserOffline" },
    mode: WebGridPagerModes.All,
    columns: gridoffline.Columns(
    gridoffline.Column(columnName: "UserName", header: "Username", canSort: false),
    gridoffline.Column(columnName: "FirstName", header: "Firstname", canSort: false),
    gridoffline.Column(columnName: "LastName", header: "Lastname", canSort: false),
    gridoffline.Column(columnName: "RegistrationOffice", header: "Registration Office", canSort: false),
    gridoffline.Column(header: "", format: @<text>@Html.ActionLink("Edit", "EditOfflineUser", "Admin", new { id = item.UserId, offlineUsers = item }, new { id = "btnEditClick", @class = "edit" })</text>),
    gridoffline.Column(header: "", format: @<text>@Html.ActionLink("View", "ViewOfflineUser", "Admin", new { usrname = item.UserName }, new { @class = "view" })</text>)));

}

控制器:

public ActionResult EditOfflineUser(int id, ListOfUsers offlineUsers)
{
   //getting id value
   //offlineUsers is null
}

型号:

public class ListOfUsers
{
    public ListOfUsers()
    {
        OnlineUserList = new List<ListOfUsers>();
        OfflineUserList = new List<ListOfUsers>(); 
    }

    public List<ListOfUsers> OnlineUserList { get; set; }
    public List<ListOfUsers> OfflineUserList { get; set; }
    public List<SelectListItem> UserCountryList { get; set; }

    public string UserName { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public string RegistrationOffice { get; set; }
    public string PositionAtOffice { get; set; }
    public string PhoneNo { get; set; }

}

0 个答案:

没有答案