问题:
各位在使用mvc的时候会不会把controller拆成单个程序集,对应的model也拆成对应的程序集呢?
这样拆开的唯一好处就是程序集按需加载比较快吧!但是程序集过多又有什么副作用呢,
想听听各位大侠的看法。。
回答1:
不太理解你的意思啊。
在一个UI里往往要用到很多model的,所以我都是在UI层又增加了很多ViewModel,大点的项目中,这些ViewModel在service层用基础Model组装一下(简单项目我就直接在controller里组装)。通过反射直接用service,所以controller中每个方法只有很少的代码。
你说的是不是这个意思?可以探讨一下。
回答2:
一般没怎么拆分。至少我经历过的项目,都没拆分。
回答3:
建议拆分。
回答4:
我也还在摸索,负责的两个项目 用两种方式,一个拆到不同程序集,一个拆开到Areas。
拆程序集:
拆开的话发现有很多问题,先不说编译速度更慢了,重点在于解耦 各模块关联程度比较高(比较复杂的业务系统)拆开后只能把公共的全部单独分离。依赖关系复杂化了。
拆Areas:
因为 controller 存在的目的很明确就只接收请求,再调业务代码跑具体业务。
因为都在Web项目内了 只需要引用业务层,然后通过MEF来实现IOC 耦合度降低了 编译速度也快了很多。
唯一缺点就是团队分工不好划分权限了,因为负责模块的人只有具体模块的代码,项目文件经常容易冲突。
回答5:
楼主你好,我现在也在研究把model层独立项目的问题,期间遇到很多麻烦啊,model在view中赋值后提交给controller后不能用model的类整体接收了,请问这是怎么回事啊?