1

私はMVC3.0アプリケーションに取り組んでいます。私のデータベースには人のリストがあり、それぞれがareaというデータベース内の別のテーブルと関係があります。

人DTO

 public class Person
{
    int PersonId {get; set;}
    string Name { get; set;}
    int AreaId {get;set;}
}

MVCビューで、アクションリンクを使用してエリアビューへのリンクを作成し、リンクテキストをエリアIDではなくエリア名にします。私のマークアップは次のようになります。

@foreach (var item in Model)
    {
        <tr>            
            <td>@Html.ActionLink(item.Name, "Edit", new { item.PersonId })</td>
            <td>@Html.ActionLink(item.AreaId.ToString(), "ListArea", "Area", new { item.AreaId}, null)</td>
            <td>@using (Html.BeginForm("Delete", "Person"))
                { 
                @Html.Hidden("PersonId", item.PersonId)
                <input type="submit" value="Delete" />
                }
            </td>
        </tr>
    }

これは、 item.AreaId.ToString()をエリア名に変更する2番目のActionLinkです。私は追加することを考えていました:

Html.RenderAction("AreaName", "Area", new {item.AreaId})

そして、アクションメソッドでは、データベースからエリア名を取得します。

私は何が間違っているのですか?

前もって感謝します。

4

1 に答える 1

0

私の理解が正しければ、次のようにアクション リンク テキストを変更してエリア名を取得してみませんか。

@Html.ActionLink(item.AreaINameToString(), "ListArea", "Area", new { item.AreaName}, null)</td>

よろしく Pavan.G

于 2012-12-03T19:03:18.687 に答える