我正在重写这个问题:
我有2个模型。条目和主题。
public class Entry
{
public int EntryId { get; set; }
public int UserId { get; set; }
public int TopicId { get; set; }
public String EntryQuestion { get; set; }
public String EntryAnswer { get; set; }
public int EntryReview { get; set; }
public String QuestionValidationURL { get; set; }
public virtual ICollection<Topic> TopicList { get; set; }
}
public class Topic
{
public int TopicId { get; set; }
public String TopicName { get; set; }
}
我按照 ASP.Net/MVC 上的示例以这种方式设置我的模型。我想做的是对于每个条目项我都有一个 TopicId,但是我想通过访问我的 TopicList 将其转换为 TopicName。
我的问题是,如何加载 TopicList?
在我遵循的示例中,我看到了一些关于 LazyLoading 和 EagerLoading 的信息,但它似乎不起作用。
我尝试从我的入口控制器执行以下操作:
db.Entries.Include(x => x.TopicList).Load();
但这仍然给了我一个 0 的 TopicList(这比 null 好)
我怎样才能做到这一点?
在我看来,我绑定到这样的条目:
@model IEnumerable<projectInterview.Models.Entry>
我想在这里访问主题列表:
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.TopicId)
</td>
...
</tr>
我想在这个循环中使用 TopicId 并显示作为集合中对象一部分的 TopicName。