📄 pdal.cst
字号:
<%@ CodeTemplate Language="C#" ClassName="PDal" TargetLanguage="C#" Debug="False" Description="" %>
<%@ Property Name="databaseName" Type="System.String" Default="TestDB" Optional="True" Category="Context" Description="" %>
<%@ Property Name="modelNameSpace" Type="System.String" Default="MyNamespace.Model" Optional="True" Category="Context" Description="" %>
<%@ Property Name="nameSpace" Type="System.String" Default="MyNamespace.PDal" Optional="True" Category="Context" Description="" %>
<%@ Property Name="procedurePrefix" Type="System.String" Default="Sp" Optional="True" Category="Context" Description="" %>
<%
DbEntity db = Template.GetDataBase(databaseName);
foreach(Table tb in db.Tables)
{
OpenResponse("PDAL\\"+tb.PropertyName+"PDal.cs");
int iFieldCount = tb.Fields.Count;
int iField = 0;
int iPkFieldCount = 0;
int iDefaultIdentityFieldCount = 0;
string pkString = "";
string pkParamList = "";
string pkValueList = "";
foreach(Field fd in tb.Fields)
{
if( fd.Identity.Enable == true || (fd.DefaultValue != "" && fd.DefaultValue != null))
iDefaultIdentityFieldCount++;
if( fd.IsPK == true)
{
iPkFieldCount++;
pkString += fd.PropertyName;
pkParamList += fd.DataType.DotNetType+" "+fd.MemberName+",";
pkValueList +="\t\t\t\t"+fd.MemberName+",\r\n";
}
}
pkParamList = pkParamList.Trim(',');
if( pkValueList != "")
{
pkValueList = "\r\n"+pkValueList;
pkValueList = pkValueList.Substring(0,pkValueList.Length-3);
}
%>
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using <%=modelNameSpace%>;
namespace <%=nameSpace%>
{
/// <summary>
/// Factory implementaion for the <%=tb.PropertyName%> DAL object
/// </summary>
public class <%=tb.PropertyName%>PDal
{
<%-- Insert --%>
#region Insert
/// <summary>
/// Insert an "<%=tb.PropertyName%>" in the database
/// </summary>
/// <param name="<%=tb.MemberName%>"></param>
public static int Insert(<%=tb.PropertyName%> <%=tb.MemberName%>)
{
object[] parmValues = new object[]
{
<%
foreach(Field fd in tb.Fields)
{
if( fd.Identity.Enable == false && (fd.DefaultValue == "" || fd.DefaultValue == null))
{
iField++;
Response.Write("\t\t\t\t"+tb.MemberName+"."+fd.PropertyName);
if( iField != iFieldCount - iDefaultIdentityFieldCount)
Response.Write(",\r\n");
}
}
%>
};
return SqlHelper.ExecuteNonQuery("<%=procedurePrefix%>_Insert<%=tb.PropertyName%>",parmValues);
}
#endregion
<%-- Update --%>
#region Update
/// <summary>
/// Update an "<%=tb.PropertyName%>" in the database
/// </summary>
/// <param name="<%=tb.MemberName%>"></param>
public static int Update(<%=tb.PropertyName%> <%=tb.MemberName%>)
{
object[] parmValues = new object[]
{
<%
iField = 0;
foreach(Field fd in tb.Fields)
{
iField++;
Response.Write("\t\t\t\t"+tb.MemberName+"."+fd.PropertyName);
if( iField != iFieldCount )
Response.Write(",\r\n");
}
%>
};
return SqlHelper.ExecuteNonQuery("<%=procedurePrefix%>_Update<%=tb.PropertyName%>",parmValues);
}
#endregion
<%-- Delete --%>
#region Delete
/// <summary>
/// DeleteByPk an "<%=tb.PropertyName%>" in the database
/// </summary>
public static int DeleteBy<%=pkString%>(<%=pkParamList%>)
{
object[] parmValues = new object[]
{ <%=pkValueList%>
};
return SqlHelper.ExecuteNonQuery("<%=procedurePrefix%>_Delete<%=tb.PropertyName%>By<%=pkString%>",parmValues);
}
/// <summary>
/// Delete an "<%=tb.PropertyName%>" in the database
/// </summary>
/// <param name="where"></param>
public static int Delete(string where)
{
if(where == null)
where = "";
else if( where.Trim() != "" && where.ToUpper().StartsWith("WHERE") == false)
where = " where "+where;
return SqlHelper.ExecuteNonQuery("<%=procedurePrefix%>_Delete<%=tb.PropertyName%>",new object[]{where});
}
#endregion
<%-- Select --%>
#region Select
public static <%=tb.PropertyName%> SelectBy<%=pkString%>(<%=pkParamList%>)
{
<%=tb.PropertyName%> res = null ;
object[] parmValues = new object[]
{ <%=pkValueList%>
};
SqlDataReader reader = SqlHelper.ExecuteReader("<%=procedurePrefix%>_Select<%=tb.PropertyName%>By<%=pkString%>",parmValues);
if( reader.Read())
res = new <%=tb.PropertyName%>(reader);
reader.Close();
return res;
}
public static IList<<%=tb.PropertyName%>> SelectAll()
{
List<<%=tb.PropertyName%>> list = new List<<%=tb.PropertyName%>>();
SqlDataReader reader = SqlHelper.ExecuteReader("<%=procedurePrefix%>_SelectAll<%=tb.PropertyName%>",new object[]{});
while(reader.Read())
list.Add( new <%=tb.PropertyName%>(reader));
reader.Close();
return list;
}
public static IList<<%=tb.PropertyName%>> Select(string where)
{
List<<%=tb.PropertyName%>> list = new List<<%=tb.PropertyName%>>();
if(where == null)
where = "";
else if( where.Trim() != "" && where.ToUpper().StartsWith("WHERE") == false)
where = " where "+where;
SqlDataReader reader = SqlHelper.ExecuteReader("<%=procedurePrefix%>_Select<%=tb.PropertyName%>",new object[]{where});
while(reader.Read())
list.Add( new <%=tb.PropertyName%>(reader));
reader.Close();
return list;
}
public static IList<<%=tb.PropertyName%>> SelectPaged(string where,int pageIndex,int pageSize,bool GetCount,out int totalCount)
{
List<<%=tb.PropertyName%>> list = new List<<%=tb.PropertyName%>>();
totalCount = 0;
if(where == null)
where = "";
else if( where.Trim() != "" && where.ToUpper().StartsWith("WHERE") == false)
where = " where "+where;
object[] parmValues = new object[]
{
pageIndex,
pageSize,
Convert.ToInt32(GetCount),
where
};
SqlDataReader reader = SqlHelper.ExecuteReader("<%=procedurePrefix%>_SelectPaged<%=tb.PropertyName%>",parmValues);
while (reader.Read())
list.Add(new <%=tb.PropertyName%>(reader));
if (GetCount && reader.NextResult() && reader.Read())
totalCount = reader.GetInt32(0);
reader.Close();
return list;
}
#endregion
}
}
<%
CloseResponse();
}
%>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -