繁体   English   中英

ASP.NET MVC将对象从表传递到控制器?

[英]ASP.NET MVC pass an object from table to the controller?

我要在连续点击后将模型传递给控制器​​。

这是我的代码不起作用。

<table class="table">
<tr>
    <th>
        <p>Sender</p>
    </th>
    <th>
        <p>Subject</p>
    </th>
    <th>
        <p>Received</p>
    </th>
    <th>
        <p>HasAttachment</p>
    </th>
    <th></th>
</tr>

@foreach (var item in Model.Inbox) {
<tr class="mail-row" onclick="location.href = '@(Html.ActionLink   ("", "MailViewer", "Profile", new { mail = item }, null ))'">
    <td>
        @Html.DisplayFor(modelItem => item.Sender)
    </td>
    <td>
        @Html.DisplayFor(modelItem => item.Subject)
    </td>
    <td>
        @Html.DisplayFor(modelItem => item.Received)
    </td>
    <td>
        @Html.DisplayFor(modelItem => item.HasAttachment)
    </td>
</tr>
}

</table>

我尝试使用Url.Action,但在URL中仅获得对象类型,而没有实际对象。

我尝试发送此对象:

public class Mail
{
    public string Sender { get; set; }
    public string Subject { get; set; }
    public DateTime Received { get; set; }
    public bool HasAttachment { get; set; }

    public string content { get; set; }
}

可以使用json但是您可以,但是您应该发送id并根据该id获取数据,但是使用json可以这样

我的动作链接将是

@Html.ActionLink("senddata", "MailViewer",new{ @data = Json.Encode(item)  } )

我的动作将是这样的

public ActionResult MailViewer(string data)
        {
            var result = System.Web.Helpers.Json.Decode<Mail>(data);

            return View();

        }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM