还是讲一些项目中你可能遇到的问题,有的时候人总是不听话,想改变原有的东西。今天我就教你怎么样颠覆MVC传统的文件夹结构,即个性化你的目录。ok,开始。先看看我设计的目录
![](http://blog.51cto.com/attachment/201006/201006021275472229171.png)
我的controller下有这么多文件夹。再看看我的views
![](http://blog.51cto.com/attachment/201006/201006021275472288000.png)
看到了吧,按照系统分类我进行了详细的划分。
现在带你看看controller如何找到view,controller代码
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
如果不这样写,controller根本找不到view,因为你已经把视图的路径改了。这样还不行,我们还需要对route进行设置,打开Global.asax,把路由改为
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
![InBlock.gif](http://blog.51cto.com/images/editer/InBlock.gif)
ok大功告成,运行结果如下
![](http://blog.51cto.com/attachment/201006/201006021275472569046.png)
最后呢再看hibernate的过程中无意发现了个Expression,不知道Nhibernate里面有没有这些内容,估计不会差很多,贴出来大家看看。
Expression.gt:对应SQL条件中的"field > value "。如:Expression.gt("salary", new Integer(5000))
Expression.ge:对应SQL条件中的"field >= value"。
Expression.lt:对应SQL条件中的"field < value"。
Expression.le:对应SQL条件中的"field <= value"。
Expression.between:对应SQL条件中的"between"。
Expression.like:对应SQL条件中的"field like value"。
Expression.in:对应SQL条件中的"field in …"。
Expression.eqProperty:用于比较两个属性之间的值,对应SQL条件中的"field = field"。如:Expression.eqProperty("Employee.id", "Group.eid");
Expression.gtProperty:用于比较两个属性之间的值,对应SQL条件中的"field > field"。
Expression.geProperty:用于比较两个属性之间的值,对应SQL条件中的"field >= field"。
Expression.ltProperty:用于比较两个属性之间的值,对应SQL条件中的"field < field"。
Expression.leProperty:用于比较两个属性之间的值,对应SQL条件中的"field <= field"。
Expression.and:and关系组合。
Expression.ge:对应SQL条件中的"field >= value"。
Expression.lt:对应SQL条件中的"field < value"。
Expression.le:对应SQL条件中的"field <= value"。
Expression.between:对应SQL条件中的"between"。
Expression.like:对应SQL条件中的"field like value"。
Expression.in:对应SQL条件中的"field in …"。
Expression.eqProperty:用于比较两个属性之间的值,对应SQL条件中的"field = field"。如:Expression.eqProperty("Employee.id", "Group.eid");
Expression.gtProperty:用于比较两个属性之间的值,对应SQL条件中的"field > field"。
Expression.geProperty:用于比较两个属性之间的值,对应SQL条件中的"field >= field"。
Expression.ltProperty:用于比较两个属性之间的值,对应SQL条件中的"field < field"。
Expression.leProperty:用于比较两个属性之间的值,对应SQL条件中的"field <= field"。
Expression.and:and关系组合。
本文转自 BruceAndLee 51CTO博客,原文链接:http://blog.51cto.com/leelei/325559,如需转载请自行联系原作者