WEB开发网
开发学院软件开发C语言 C# 代码生成器 & 网站架构设计 阅读

C# 代码生成器 & 网站架构设计

 2010-09-30 21:06:04 来源:WEB开发网   
核心提示: DAL 数据访问层namespacecom.公司名称.项目名称.DAL{publicclassProduct{publicintexecuteInsert(com.公司名称.项目名称.Model.Productmodel){StringBuilderstrSql=newStringBuilder

DAL 数据访问层

namespace com.公司名称.项目名称.DAL
{
    public class Product
    {
        public int executeInsert(com.公司名称.项目名称.Model.Product model)
        {
            StringBuilder strSql = new StringBuilder();
 
            //在这里组合出完整的 SQL 语句
            strSql.Append("INSERT INTO Product(ID, Name, Price) VALUES (@ID, @Name, @Price)"); 
 
            //ADO.NET 中的 SqlParameterCollection 类的应用,表单中所有输入数据的集合 
            System.Data.SqlClient.SqlParameter[] params = {
                new SqlParameter("@ID", SqlDbType.Int), 
                new SqlParameter("@Name", SqlDbType.NVarchar, 30), 
                new SqlParameter("@Price", SqlDbType.Decimal) }; 
             
            //在这将用户在表单中输入的多个数据,逐一填入 SQL 语句里的「参数(parameters)」
            params[0].Value = model.ID;
            params[1].Value = model.Name;
            params[2].Value = model.Price; 

            //将组合好的整句 SQL 语句,透过共用的「DBUtility 数据库访问类」DbHelper,抛入数据库去执行「添加」的动作 

            com.公司名称.项目名称.DBUtility.DbHelper dbh;

            int intResult = dbh.executeInsert(strSql.ToString(), params);

                        
            return intResult;
        }
    }
}

当然,若您只是单纯要传递用户在表单中输入的多个值,并非一定要透过此种 Mapping 的 C# 类 instance,微软 ADO.NET 提供的 SqlParameterCollection 类也很好用,且可事先设置好对应的数据表里,字段的类型和长度,如上方 DAL 数据访问层里的代码。

若真正要谈到 O/R Mapping 的议题,其特性及优点甚多,例如可避免在代码中,直接写死特定的数据表字段名称,或避免在前端代码中出现 SQL 语句,以利于中大型系统日后的维护。其内容非三言两语可道尽,本文不再深入探讨。

上一页  1 2 3 4 5 

Tags:代码 生成器 amp

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接