我是一名MVC新手并创建了一个简单的项目。我有2个模型,1个viewmodel和一个存储库。我想知道我是否可以在我的存储库中使用AutoMapper,以及我该怎么做。
我有以下型号
public class Project : BaseModel {
public int Id { get; set; }
public int CustomerId { get; set; }
public string Description { get; set; }
}
public class Customer: BaseModel {
public int CustomerId { get; set; }
public string CustomerName get; set; }
}
我的ViewModel是
public class ProjectViewModel {
public int ProjectId { get;set; }
public int Description { get;set; }
public int CustomerName { get;set; }
}
我有一个ProjectRepository,方法如下:
public List<ProjectoverzichtItem> GetProjectoverzichtItems() {
using (var context = _context) {
var items = (from p in context.Project
join c in context.Company on p.CustomerId equals c.CompanyId
select new ProjectoverzichtItem {
ProjectId = p.ProjectId,
Code = p.Code,
Description = p.Description,
Contractor = c.CompanyName
});
return items != null ? items.ToList() : null;
}
}
这是填充ViewModel的正确方法吗?