ASP.Net MVC是UI层的框架,EF是数据访问的逻辑. 如果在Controller中using DbContext,把查询的结果的对象放到cshtml中显示,那么一旦在cshtml中访问关联属性,那么就会报错.因为关联属性可以一致关联下去,很诱惑人,include也来不及. 如果不using也没问题,因为会自动回收,但是这打开了“潘多拉魔盒”,甚至可以在UI层更新数据,相当于把数据逻辑写到了UI层. 有的三层架构中用实体类做Model,这样也是不好的,因为实体类属于DAL层的逻辑. 没有最