我们要做一套基于BS结构的集团办公系统,打算是aps.net MVC结合三层架构的形式,现有一些问题,请教大家一下。望指教.
1.因为这套系统要为不同的用户服务,因此有权限管理系统,权限很细,要做到页面上的按钮级。我想问一下,有没有一个可以全局考虑的方法实现权限的校检,而不是每点按钮时都去数据库中读一下用户的权限。以前我们做windows程序时是用Tag属性,每个Tag上定上权限ID,然后Load时检查此ID,以决定是enable还是disable.
2.MVC中的缓存机制和Asp.net还是一样的嘛?因为有很多东西要做全局缓存,以便多个用户共同使用。Enterprise Library中也提供了缓存,但不知道用这个效率如何?是不是有更好的解决办法?
3. .net Framework中的Exception是否可以实现追溯呢?比如用户引发了C方法,C调用B,B调用A,A出了一个异常,最后系统能不能记录引起此异常的一系列的原因呢?就是记录从C到A的所有过程?
4.我看您讲了MVC不等于三层架构,现在就是打算用MVC+三层架构的方式。我想问一下。数据层用entity framework和自己结何enterprise library中的DAAB模块自己写,哪个效率更高些。我们要用oracle数据库
5.有一些报表的实现可能会非常复杂,运算时间较长,这种大型的报表我想放在一个单独的服务器上。不知道类似的情况,您有没有好的建议。
6.MVC下如何实现grid view控件的功能?

解决方案 »

  1.   

    1、可以针对每个action设计权限
    2、不清楚
    3、异常可以追溯,异常信息中会包含调用堆栈
    4、MVC一般只用在表示层
    5、sql server reporting services,必要的话单独建数据仓库
    6、htmlhelper,个人觉得比gridview更灵活
      

  2.   

    我们现在也需要做一个能源管理系统,要求和你的差不多,不过不用MVC,只用多层架构。现在正做权限及日志管理方面的事,
    对按钮的权限控制也在考虑范围中,没有找到合适的方法,暂时决定像楼上朋友所说针对每个action设计权限。关注..
      

  3.   

    首先你是否真的了解mvc,还是因为工具厂商的演示和介绍让你心动如果是前者我建议你去用它,如果是后者请考虑一个新工具带来的学习开销和解决由新工具衍生的各种新问题的时间开销,以及新架构和原来的编程方式的冲突
    摘一段《程序员修炼之道》序的一段话
     ---------引用----------------------------------------------------
    在许多人声称要给你帮助,工具供应商吹嘘他们的产品所展现的奇迹。方法学者们许诺说他们的技术保证有效,每个人都声称他们的编程语言是最好的,而每一种操作系统都是对所有可以想象得到的问题的解答。
     当然,所有这些都不是真的,并不存在容易的答案,也不存在最佳解决方案这样一种东西,无论他是公司,是语言,还是操作系统,能够存在的只是某些特定情况下更为适宜的系统-------------------------------------------------------------------
    记住没有“银弹”,尤其是当你准备引入新工具,新技术,新架构的时候,要充分考虑他们所带来的风险,并考虑你能否控制这些风险。别盲目,别乐观----好处是看的见地,而风险则是被一些盲目的吹捧着掩盖起来了(他们不愿意承认自己吹捧的东西有瑕疵,即使看到他们也不会说,因为他们是盲目的吹捧者)
      

  4.   

     用mvc的话,要做好重温asp的准备了。没有了服务器控件,没有postback,后台代码只能嵌套在html里,发现了微软兜了一个圈,又回到了原始社会,就像我们现代人,吃惯了罐头食品,突然发现来点原始的烧烤味道也不错。
      

  5.   


    可以使用partial view,这样多少可以利用一下web control
      

  6.   

    技术风险很大啊。感觉楼主对MVC了解的很少。花一个星期学学就发现这些问题不存在了