none
关于将复杂逻辑校验和页面分开的设想 RRS feed

  • 问题

  • 最近在做工作流项目时,发现所有的业务逻辑校验都在用户点击按钮是触发,第一,用户等待时间过长,第二,页面代码太复杂,第三,一旦业务逻辑发生改变,要修改的代码太多,非常容易造成混乱。
    我在想,有没有可能将复杂的业务逻辑校验和判断放在后台,前台页面只做基本的数据校验(比如数据格式、必填项等),用户递交后立即返回,而后台(类似系统服务一样的进程)进行业务逻辑判断,前后台代码分开,清晰明了,还可同步开发,一旦业务逻辑发生改变,只要修改后台代码。
    我尝试过数据库定时任务(sql语句局限性太多),系统定时任务,都不太理想。
    请问各位大侠,我的设想是不是已经有功能实现?如果没有,建议微软在下一版中考虑进去。
    2009年11月12日 4:20

答案

  • 第一、业务逻辑校验的代码可以用多线程的方式解决,如果时间长,给用户一个提示,比如进度条什么的!
    第二、你的代码本就不应该放在页面的.cs文件中。应多使用工厂模式,将代码尽可能写成多个类或接口,便于修改和重复调用。

    我的建议,不是很成熟!
    2009年11月12日 7:56
  • 你好!
         可以尝试现在比较普遍的三层架构,把业务逻辑抽象成业务层,达到松耦合的目的!
    周雪峰
    2009年11月12日 9:57
    版主

全部回复

  • 第一、业务逻辑校验的代码可以用多线程的方式解决,如果时间长,给用户一个提示,比如进度条什么的!
    第二、你的代码本就不应该放在页面的.cs文件中。应多使用工厂模式,将代码尽可能写成多个类或接口,便于修改和重复调用。

    我的建议,不是很成熟!
    2009年11月12日 7:56
  • 你好!
         可以尝试现在比较普遍的三层架构,把业务逻辑抽象成业务层,达到松耦合的目的!
    周雪峰
    2009年11月12日 9:57
    版主