📄 dal.cst
字号:
<%@ CodeTemplate Language="C#" ClassName="DAL" TargetLanguage="C#" Debug="False" Description="" %>
<%@ Property Name="databaseName" Type="System.String" Default="TestDB" Optional="True" Category="Context" Description="" %>
<%@ Property Name="nameSpace" Type="System.String" Default="MyNamespace.Dal" Optional="True" Category="Context" Description="" %>
<%@ Property Name="modelNameSpace" Type="System.String" Default="MyNamespace.Model" Optional="True" Category="Context" Description="" %>
<%
DbEntity db = Template.GetDataBase(databaseName);
//从Spdevelop中获取数据库工程信息,databaseName必须是同一个解决方案的数据库工程名称(区分大小写)
foreach(Table tb in db.Tables)
{
OpenResponse("DAL\\"+tb.PropertyName+"DAL.cs");
string noDefaultFields = "";
string noDefaultFieldFormats = "";
string noDefaultFieldValues = "";
int iField = 0;
foreach(Field fd in tb.Fields)
{
if( (fd.DefaultValue != "" || fd.DefaultValue != null) && fd.Identity.Enable == false)
{
noDefaultFields += "\t\t\t\t\t"+fd.PropertyName+",\r\n";
noDefaultFieldValues += "\t\t\t\t\t"+tb.MemberName+"."+fd.PropertyName+",\r\n";
if( fd.DataType.GroupName.ToUpper() == "NUMBER")
noDefaultFieldFormats += "{"+iField.ToString()+"},";
else
noDefaultFieldFormats += "'{"+iField.ToString()+"}',";
iField++;
}
}
if( noDefaultFields.EndsWith(",\r\n"))
noDefaultFields = noDefaultFields.Substring(0,noDefaultFields.Length-3);
if( noDefaultFieldValues.EndsWith(",\r\n"))
noDefaultFieldValues = noDefaultFieldValues.Substring(0,noDefaultFieldValues.Length-3);
noDefaultFieldFormats = noDefaultFieldFormats.Trim(',');
%>
using System;
using System.Data;
using System.Data.SqlClient;
using <%=modelNameSpace%>;
namespace <%=nameSpace%>
{
public class <%=tb.PropertyName%>DAL
{
public <%=tb.PropertyName%>DAL()
{
}
#region Insert
public static int Insert(<%=tb.PropertyName%> <%=tb.MemberName%>)
{
string sql = @"Insert Into <%=tb.PropertyName%> (
<%=noDefaultFields%>
) values(<%=noDefaultFieldFormats%>)";
sql = string.Format(sql,
<%=noDefaultFieldValues%>
);
return SqlHelper.ExecSql(sql);
}
#endregion
#region Update
public static int Update(<%=tb.PropertyName%> <%=tb.MemberName%>)
{
string sql = @"Update <%=tb.PropertyName%> set
<%
iField = 0;
string updstr = "";
string upvalue = "";
iField = 0;
foreach(Field fd in tb.Fields)
{
if( fd.Identity.Enable == false && fd.IsPK == false)
{
updstr += "\t\t\t\t\t"+fd.PropertyName+"= ";
if( fd.DataType.GroupName.ToUpper() == "NUMBER")
updstr += "{"+iField.ToString()+"}";
else
updstr += "'{"+iField.ToString()+"}'";
updstr += ",\r\n";
upvalue += "\t\t\t\t\t"+tb.MemberName+"."+fd.PropertyName+",\r\n";
iField++;
}
}
if( updstr.EndsWith(",\r\n"))
updstr = updstr.Substring(0,updstr.Length-3);
%>
<%=updstr%>
where
<%
updstr = "";
foreach(Field fd in tb.Fields)
{
if( fd.IsPK == true)
{
updstr += "\t\t\t\t\t"+fd.PropertyName+"= ";
if( fd.DataType.GroupName.ToUpper() == "NUMBER")
updstr += "{"+iField.ToString()+"}";
else
updstr += "'{"+iField.ToString()+"}'";
updstr += ",\r\n";
upvalue += "\t\t\t\t\t"+tb.MemberName+"."+fd.PropertyName+",\r\n";
}
}
if( updstr.EndsWith(",\r\n"))
updstr = updstr.Substring(0,updstr.Length-3);
if( upvalue.EndsWith(",\r\n"))
upvalue = upvalue.Substring(0,upvalue.Length-3);
%>
<%=updstr%>";
sql = string.Format(sql,
<%=upvalue%>);
return SqlHelper.ExecSql(sql);
}
#endregion
#region Delete
public static int Delete(<%=tb.PropertyName%> <%=tb.MemberName%>)
{
<%
string delInsstr = "";
string delIncvalue = "";
iField = 0;
foreach(Field fd in tb.Fields)
{
if( fd.IsPK == true)
{
delInsstr += "\t\t\t\t\t"+fd.PropertyName+"= ";
if( fd.DataType.GroupName.ToUpper() == "NUMBER")
delInsstr += "{"+iField.ToString()+"}";
else
delInsstr += "'{"+iField.ToString()+"}'";
delInsstr += ",\r\n";
delIncvalue += "\t\t\t\t\t"+tb.MemberName+"."+fd.PropertyName+",\r\n";
iField++;
}
}
if( delInsstr.EndsWith(",\r\n"))
delInsstr = delInsstr.Substring(0,delInsstr.Length-3);
if( delIncvalue.EndsWith(",\r\n"))
delIncvalue = delIncvalue.Substring(0,delIncvalue.Length-3);
%>
string sql = @"Delete from <%=tb.PropertyName%> where
<%=delInsstr%>";
sql = string.Format(sql,
<%=delIncvalue%>);
return SqlHelper.ExecSql(sql);
}
#endregion
#region Select
public static DataSet SelectAll()
{
string sql = @"Select * from <%=tb.PropertyName%>";
return SqlHelper.Select(sql);
}
public static DataSet Select(string where)
{
if( where != "" && where != null && where.ToUpper().StartsWith("WHERE") == false)
where = " where " + where;
string sql = @"Select * from <%=tb.PropertyName%>" + where;
return SqlHelper.Select(sql);
}
<%
string pkList = "";
string pkListValue = "";
foreach(Field fd in tb.Fields)
{
if( fd.IsPK == true)
{
pkList += fd.DataType.DotNetType+" "+ fd.MemberName+",";
pkListValue += "\t\t\t\t\t"+fd.MemberName+",\r\n";
}
}
pkList = pkList.Trim(',');
if( pkListValue.EndsWith(",\r\n"))
pkListValue = pkListValue.Substring(0,pkListValue.Length-3);
%>
public static <%=tb.PropertyName%> SelectByPk(<%=pkList%>)
{
<%=tb.PropertyName%> <%=tb.MemberName%> = null;
string sql = @"select * from <%=tb.PropertyName%> where
<%=delInsstr%>";
sql = string.Format(sql,
<%=pkListValue%>);
SqlDataReader reader = SqlHelper.ReadSelect(sql);
if (reader.Read())
<%=tb.MemberName%> = new <%=tb.PropertyName%>(reader);
reader.Close();
return <%=tb.MemberName%>;
}
#endregion
}
}
<%
CloseResponse();
}
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -