首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在MVC中使用数据库视图

在MVC中使用数据库视图
EN

Stack Overflow用户
提问于 2013-11-30 23:38:54
回答 1查看 1.6K关注 0票数 2

我希望将一些数据库表组合到数据库视图中,并像对表那样作为实体类检索它。比方说,我的数据库中有市的表和StudentView。在这个场景中:

1)我是否应该创建一个实体用于StudentView,就像为学生City表所做的那样?

2)当然,可以考虑使用ViewModel而不是使用视图(这样就不需要和额外的实体)。但是,由于对Lambda或Linq的一些限制或不够了解,在MVC中使用数据库视图而不是ViewModel是否可以接受?

3)我想在我的Dropdownlist列表上显示一些数据,如下所示:通过组合3-4个字段: Michael (1980年6月1日-伦敦)

那么,与控制器或模型相比,在数据库视图中组合这些字段更好吗?提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2013-12-01 17:52:21

您最好创建一个新的模型StudentView (不应该是一个实体--所以不需要是从dbContext派生的),您可以在您的存储库中编写如下,

代码语言:javascript
运行
复制
public IQueryable<StudentView> GetSudents()
{
   using (var db = new StudentDb())
   {
       var results=from student in Students
                   from city in City
                   where student.CityId==city.Id
                   select new StudentView { Name = student.Name, Id = student.Id, CityName=city.Name };
       return results;
   }
}
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20306961

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档