1

次のように2つのテーブルがあります。

表 1: ID(PK) 名

表 2: ID(PK) 電子メール テーブル1ID(FK)

私はEntity Frameworkを使用してデータを保存しています。保存したら、Ajax呼び出しを使用して取得し、ビューに表示します。ただし、外部キー列はビューで更新されませんが、他のデータは更新されます。更新された外部キーの値を確認するには、Web フォームを手動で更新する必要があります。

コントローラーからのコードは次のとおりです。

table2Obj = new Table2Object();
table2Obj.Email = emails;
table2Obj.Table1ID = Convert.ToInt32(ddlReferralTypes);
Context.Table2Objects.Add(table2Obj);
Context.SaveChanges();

List<Table2Object> table2Objs = Context.GetTable2Object();
string htmlView = RenderPartialViewToString("_ReferralList", table2Objs);
htmlView = HttpUtility.JavaScriptStringEncode(htmlView);
return Content("{\"MessageType\":\"success\",\"MessageContent\":\"Referral added successfully\",\"htmlPartialView\":\"" + htmlView + "\"}");

ビューは次のようになります。

    @model List<MyModels.Models.Table2Object>
    @foreach (var item in Model)
    {
    //display data
Email: @Html.DisplayFor(modelItem => item.Email)
Referral: @Html.DisplayFor(modelItem => item.Table2.Name)
    }
4

1 に答える 1

0

.Include()メソッドを使用してみましたか? あなたの場合は次のようになると思います:

this.Table2Objects.Include("Email").ToList();

または

this.Table2Objects.Include(t => t.Email).ToList();

うまくいけば、それは役に立ちます。

于 2013-07-24T14:30:59.730 に答える