NtierGen1.6介绍

  • C# Data Access Layer eg. CustomerDAO.cs, OrderDAO.cs, CustomerOrderDAO.cs
    • Get Methods - eg. OrderDAO.GetByOrderID(int OrderID)
    • Paged Get Methods - eg. OrderDAO.GetAll(int PageNumber,int PageSize)
    • Persist Methods - eg. OrderDAO.Persist(OrderDataSet objOrderDataSet)
    • Insert, Update, Delete Methods - eg. OrderDAO.DeleteByOrderID(int OrderID)
    • Custom Queries - eg. UserDAO.GetByLogin(string Username, string Password)
    • Multi-Table DataSet DAOs - eg. CustomerOrdersDAO.cs, Product_ProductCategoryDAO.cs
  • C# Strongly Typed DataSets eg. CustomerDataSet.cs, OrderDataSet.cs, CustomerOrderDataSet.cs
    • Strongly-Typed DataSets, DataTables and DataRows Generated - eg. OrderDataSet.Order.Add(DataTime OrderDate, int CustomerID, string Notes)
    • Multi-Tabled DataSets
    • Serializable to XML
    • Ideal for Inter-Layer Data Transport 
    • Full support for winform and webform control data binding
  • C# Business Rules Layer eg. CustomerBR.cs, OrderB.cs, CustomerOrderBr.cs
    • Can be extended to include custom business rules and processes
    • Methods can be easily exposed as XML web services
  • VB.NET Business Rules Layer eg. CustomerBR.vb, OrderB.vb, CustomerOrderBr.vb
    • Can be extended to include custom business rules and processes
    • Methods can be easily exposed as XML web services
  • Remoting Client & Server XML Configuration Files
    • Distribute your application across a network
  • Business Rules XML Web Service Facade 
  • T-SQL Stored Procedures eg. GetCustomerByID, GetUserByUsernamePassword
    • Generates Get, Insert, Update, and Delete Stored Procedures
    • Generates GetByForeginKey, GetByPrimaryKey
    • Generates Custom Query Procedures - eg. GetOrderByOrderDateRange, GetUserByUserTypeID

      从官方网站上下载的NtierGen,用起来,感觉上一般,而且因为是试用版,不但有日期限制,还被限制为了只能导出三张表。看了看价格为$40,比起Deklarit的几百美元的天价来说,的确算是便宜,可惜它没有集成在VS.NET的开发环境中,而仅仅只是一个代码生成器而已。
      虽然可导出的表的数量有限制,但对于熟悉IL的老兄,这不是什么问题。我用Reflector for .NET看了一下里面的代码,发现里面有一个MAX_TABLES变量,所以把MAX_TABLES由3改成了03e8,然后,在数据库中,导出了十张表,测试了一下效果。
      生成的过程有点慢,并且我配置不高的机器进入了暂时的无响应状态,不过稍后代码确实生成成功了。在生成代码后,指定的目录内有五个文件夹,分别是01. Common DataSets、02. Business Rules Layer、03. Data Access Layer、04. SQL Stored Procedures、99. Inter-Tier Communication,我打开了Common DataSets看了看,感觉一般,它只是将数据库中的表进行了类型化,然后又看了一下SQL Stored Procedures文件夹里面的sql文件,发现它在自动生成Sql的添加、删除、修改、查询的存储过程上,虽然功能稍显薄弱,但还是可以接受的,其它的还没有仔细测试,所以也不是很清楚,究竟生成的代码的可用性有多少,还等一段时间才能知道了。
      不过,说实话,我不太喜欢把所有的数据操作都放到存储过程中实现,尤其是一些简单的操作,因为这样做,我反而会觉得麻烦,尽管大家都说有这样或那样的好处,但我还是觉得在SQL Sever的企业管理器中或查询分析器中写存储过程的代码,界面实在是不够友好,长一点的代码写起来有不少的麻烦,实在是不爽。以前没有Vs2003时,我都是在一些文本编辑软件中写了以后再Copy进去,所以在编写过程中难免会有不少的问题出现,现在问题也没有解决,如果NtierGen生成的代码确实能够可用的话,倒是能帮上不少的忙。

      大家可以试试这个软件,对于快速开发可能会起到一定的帮助。

  • posted @ 2004-06-28 06:15  一根神棍研古今  阅读(834)  评论(0编辑  收藏  举报
    Web Counter