【发布时间】:2011-10-27 14:17:36
【问题描述】:
此问题与this有关
我决定更改通用存储库模式并为每个实体使用特定的存储库。但是我只是找不到如何使它工作,因为在我的 html 中我需要显示来自相关实体的一些字段。
用 Iqueryable 代替 Ienumerable 会更好吗?
存储库接口
public interface IApplicantPositionRepository : IDisposable
{
IEnumerable<ApplicationPositionHistory> GetApplicationPositionHistories(int applicantId, int positionId);
void Save();
}
存储库接口实现。
public IEnumerable<ApplicationPositionHistory> GetApplicationPositionHistories(int applicantId, int positionId)
{
return context.ApplicationsPositionHistory.Where(d => d.applicantPosition.ApplicantID == applicantId && d.applicantPosition.PositionID == positionId);
}
控制器方法
public ViewResult History(int applicantId, int positionId)
{
var history=applicantPositionRepository.GetApplicationPositionHistories(applicantId, positionId);
return View(history);
}
HTML。
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.applicantPosition.Applicant.name)
</td>
<td>
@Html.DisplayFor(modelItem => item.applicantPosition.Position.name)
</td>
【问题讨论】:
-
我使用本教程来实现存储库。 asp.net/entity-framework/tutorials/…
标签: asp.net-mvc asp.net-mvc-3 entity-framework entity-framework-4