改进我的CodeSmith模板

说明:完善了基本数据验证的机制,目前可以根据数据库字段的设置,进行是否为空、输入值长度等基本判断。
模板下载
例子:
数据表

/****** 对象:  Table [dbo].[Department]    脚本日期: 03/01/2008 22:31:00 ******/

CREATE TABLE [dbo].[Department](
 
[DepartmentAutoId] [int] IDENTITY(1,1NOT NULL,
 
[IsInEffect] [bit] NOT NULL DEFAULT ('false'),
 
[DeptCode] [char](7) COLLATE Chinese_PRC_CI_AS NOT NULL DEFAULT ('0000000'),
 
[DeptName] [varchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL DEFAULT ('<未填入>'),
 
[ClinicAttrCode] [char](1) COLLATE Chinese_PRC_CI_AS NOT NULL DEFAULT ('0'),
 
[DeptOthierName] [varchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL DEFAULT ('<未填入>'),
 
CONSTRAINT [PK_DEPARTMENT] PRIMARY KEY NONCLUSTERED 
(
 
[DepartmentAutoId] ASC
)
WITH (PAD_INDEX  = OFF, IGNORE_DUP_KEY = OFFON [PRIMARY]
ON [PRIMARY]

GO
SET ANSI_PADDING OFF
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'科室表自动编号' , @level0type=N'SCHEMA',@level0name=N'dbo'@level1type=N'TABLE',@level1name=N'Department'@level2type=N'COLUMN',@level2name=N'DepartmentAutoId'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'生效' , @level0type=N'SCHEMA',@level0name=N'dbo'@level1type=N'TABLE',@level1name=N'Department'@level2type=N'COLUMN',@level2name=N'IsInEffect'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'科别代码' , @level0type=N'SCHEMA',@level0name=N'dbo'@level1type=N'TABLE',@level1name=N'Department'@level2type=N'COLUMN',@level2name=N'DeptCode'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'科室名称' , @level0type=N'SCHEMA',@level0name=N'dbo'@level1type=N'TABLE',@level1name=N'Department'@level2type=N'COLUMN',@level2name=N'DeptName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'科室属性代码' , @level0type=N'SCHEMA',@level0name=N'dbo'@level1type=N'TABLE',@level1name=N'Department'@level2type=N'COLUMN',@level2name=N'ClinicAttrCode'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'科室习惯名称' , @level0type=N'SCHEMA',@level0name=N'dbo'@level1type=N'TABLE',@level1name=N'Department'@level2type=N'COLUMN',@level2name=N'DeptOthierName'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description'@value=N'医院内设置的部门' , @level0type=N'SCHEMA',@level0name=N'dbo'@level1type=N'TABLE',@level1name=N'Department'

根据以上数据表用模板生成了一个实体类
// =================================================================== 
// 项目说明
//====================================================================
// 江郎 @Copy Right 2006-2008
// 文件: Department.Generated.cs
// 项目名称:YcMRIS
// 创建时间:2008-03-01
// 负责人:江郎
// ===================================================================
using System;
namespace YcMRIS.Model
{
    
/// <summary>
    
///Department数据实体
    
///本类代码由代码生成器自动生成不要轻易修改
    
/// </summary>

    [Serializable]
    
public partial class Department :ModelBase
    
{
        
变量定义
        
        
构造函数
        
        
字段属性
        
        
功能属性
        
        
事件
        
        
验证
        
        
实现抽象类
    }

}


posted @ 2008-03-01 22:39  江郎  阅读(1094)  评论(2编辑  收藏  举报