代码生成器ltscode2.1
该版本是对以前版本的升级,使用方法没有改变。具体使用方法参见:http://www.cnblogs.com/lts8989/archive/2010/01/28/1658763.html
这个版本的模板数增至6个,分别为BLL、Factory、IDAL、Model、SQLServerDAL、proc,严格按照petshop的分层结构生成代码。如果各位网友想修改模板,方法较以前略有不同。
修改模板的方法
以BLL层为例介绍,每个模板对应一个DLL文件BLL.dll文件中包含两个函数如下:
代码
using System;
using System.Collections.Generic;
using System.Text;
using ltsmodel;
using LtsBll;
using System.Data;
using System.IO;
namespace BLL
{
public class BLL
{
/// <summary>
/// 将单个表生成
/// </summary>
/// <param name="tableName">表名</param>
public string CreateCode(string tableName)
{
string StrReturn = Tools.CreateCodeByXml(tableName, "BLL.xsl");
List<Ltsmodel> txtmodel = Tools.GetDbToCS();
txtmodel = Tools.GetDbToCS();
StrReturn = Tools.StringReplace(StrReturn, txtmodel);
StrReturn = StrReturn.Remove(0, StrReturn.IndexOf("<?xml version=\"1.0\" encoding=\"utf-8\"?>") + "<?xml version=\"1.0\" encoding=\"utf-8\"?>".Length);
return StrReturn;
}
/// <summary>
/// 生成所有表
/// </summary>
/// <param name="dir">输出目录的路径</param>
/// <returns>错误信息,如果成功返回success</returns>
public string CreateAllTableCode(string dir)
{
List<string> listAllTable = LtscodeBll.GetAllTable();
foreach (string tablename in listAllTable)
{
string codestr = CreateCode(tablename);
FileStream objFileStream = new FileStream(dir + tablename+"BLL.cs", FileMode.Create, FileAccess.Write);
StreamWriter objStreamWriter = new StreamWriter(objFileStream);
objStreamWriter.Write(codestr);
objStreamWriter.Close();
}
return "success";
}
}
}
在软件界面中左边树右键选择模板后执行的是CreateCode函数,点击“输出所有代码至文件夹”按钮执行的是每个模板的CreateAllTableCode函数。
希望大家能编写出更多适合自己的模板。
可执行文件:ltscode_Release.rar