1

ASP.NET MVC3 では、Webgrid を使用してデータを入力しています。その列のデータにアクション リンクを設定したい列があります。私のテーブルは次のようになります

Roll No | StudentName  |  Class |  Course  |         |
======================================================
110     |  XY          |   5    |   Science| ViewDetails

行内の各 ViewDetails へのリンクを提供して、目的のアクションに移動したいと考えています。また、RollNo という値をアクションに渡したいと考えています。これを達成する方法。私はこのようなものを試しました。

var grid = new WebGrid(source: Model, canPage: true, rowsPerPage: 10);
    grid.Pager(WebGridPagerModes.NextPrevious);
    @grid.GetHtml(tableStyle: "grid", 
        htmlAttributes: new { id = "DataTable" }, 
        headerStyle: "grid-header", 
        footerStyle: "grid-header", 
        alternatingRowStyle: "grid-alternating-row", 
        selectedRowStyle: "grid-selected-row", 
        rowStyle: "grid-row-style", 
        columns: grid.Columns(
           grid.Column(columnName: "RollNo", header: "RollNo"), 
           grid.Column(columnName: "StudentName", header: "StudentName"), 
           grid.Column(columnName: "Class", header: "Class"), 
           grid.Column(columnName: "Course", header: "Course"),
           grid.Column(header: "",
                  format:item => 
                    new HtmlString(Html.ActionLink("ViewDetails","Home")))); 
4

2 に答える 2

2

このくだらない構文でそれを行います:

grid.Column(
    header: "Link", 
    format: @<text>@Html.ActionLink("ViewDetails", "Home")</text>)

ブロック内では、次のような<text>変数を使用して現在の行にアクセスできます。item

format: @<text>@Html.ActionLink(item.Text, "Home")</text>
于 2012-11-27T15:28:07.053 に答える
0

HTML.Raw() を使用できます

grid.Column(header: "",
                  format:item => 
                    HTML.Raw(Html.ActionLink("ViewDetails","Home")))); 
于 2013-11-21T20:16:34.727 に答える