zoukankan      html  css  js  c++  java
  • 对DNN的一些高层架构设想

    深入一门语言去编程

    现在重新审视Web Form的架构,感触颇多。Rick Strahl 2007年的一篇文章已近谈到了很多分层和单元测试的问题:What's Ailing ASP.NET Web Forms 看来,要解决这些问题,就是需要深入一门语言去编程了。

    DNN单元测试

    目前DNN的业务逻辑层和DAL层都无法进行单元测试。

    1. 给DNN 项目增加Service层,把业务逻辑放入其中,这样就可以对其进行单元测试,当然,架构也更明确了。
    2. 对于DAL层,有一篇文章介绍了一个单元测试框架,不过目前无法使用了:Unit Testing a DotNetNuke Private Assembly Module

    现在的问题是,Web Form使用的事件响应机制使业务逻辑代码和UI操作代码很难分开。Web Form使用partial 的类把一个UI的页面分成三份: xxx.aspx; xxx.aspx.cs; xxx.aspx.design,因为是partial的类,所以这三个部分中的变量都是可以在任何一个部分中直接访问的,这带来的一个问题就是在aspx.cs文件中对事件响应的代码中,因为可以直接访问aspx.design页面中全局控件变量,比如textField, dropdownList之类的东西,事件响应代码变得跟UI紧耦合,从而无法进行单元测试。对上面的这些问题,这篇文章有一定的价值:Testing ASP.NET WebForms

    学习计划:

    1. 研究DNN官方项目的单元测试方法
    2. 研究使用MSBuilder打包模块的方法

    To Do:

    可测试的DNN模块-- 如何创建可测试的DNN模块

    可测试的DNN模块--如何创建测试项目

  • 相关阅读:
    蜘蛛禁止访问文件
    基于PhalApi的Smarty拓展 (视图层的应用)
    MySQL数据库存表情
    查看PHP版本等相关信息
    读取数据库表信息
    nginx简介
    Redis发布订阅
    Redis持久化
    Redis主从复制
    Redis的Java客户端Jedis
  • 原文地址:https://www.cnblogs.com/DotNetNuke/p/1989773.html
Copyright © 2011-2022 走看看