<%@ CodeTemplate Language="C#" TargetLanguage="Text" Description="This template demonstrates using properties defined in external assemblies." %> <%@ Property Name="SourceTable" Type="SchemaExplorer.TableSchema" Category="Context" Description="The table to use for this sample." %> <%@ Assembly Name="SchemaExplorer" %> <%@ Import Namespace="SchemaExplorer" %> /// ///Data Implemention Object ///BASIC CRUD CLASS FOR TABLE <%=this.SourceTable.Name%> ///By wm with codesmith. ///on <%= DateTime.Now.ToString("MM/dd/yyyy")%> /// using System; using Tracen.Data.BaseObject; using Tracen.Utils; using System.Data.SqlClient; namespace Deiniu.Wms.Data.Model { #region <%= getObjClassName() %>_Imp [Serializable] class <%= getObjClassName() %>_Imp : BaseModel_Imp{ protected override void Assem_Model(SqlDataReader reader, BaseModel obj) { if (reader != null && !reader.IsClosed) { <%= getObjClassName() %> tmpObj = (<%= getObjClassName() %>)obj; if (reader.Read()) { <% int i = 0; foreach (ColumnSchema column in this.SourceTable.Columns) { %> if (!reader.IsDBNull(<%=i%>)) tmpObj._<%=column.Name %> = reader.Get<%= column.DataType %>(<%=i%>)<% if(column.DataType.ToString().Equals("DateTime")) {%>.ToString() <% } %>; <% i++; } %> reader.Close(); } } } protected override void CmdPrepare(SqlCommand oraCmd) { <%= getObjClassName() %> tmpObj = (<%= getObjClassName() %>)ModelObj; switch (this._op_flag { case (int)op_flag.add: _strSql = "INSERT INTO dbo. <%= getTableName() %>(<%=getColums4Insert("")%>) VALUES(<%=getColums4Insert("@")%>)"; break; case (int)op_flag.update: _strSql = "UPDATE dbo.<%= getTableName() %> SET <%= getColums4update()%> WHERE ID = @ID"; break; case (int)op_flag.delete: _strSql = "UPDATE dbo.<%= getTableName() %> SET DR =0 WHERE ID = @ID"; break; case (int)op_flag.getObj: _strSql = "SELECT * FROM dbo.<%= getTableName() %> WHERE ID = @ID"; break; case (int)op_flag.queryAll: _strSql = "SELECT * FROM dbo.<%= getTableName() %> "; break; case (int)op_flag.queryActived: _strSql = "SELECT * FROM dbo.<%= getTableName() %> WHERE DR =1"; break; case (int)op_flag.getPk: _strSql = "SELECT MAX(ID) FROM dbo.<%= getTableName() %> WHERE DR =1"; break; } oraCmd.CommandText = _strSql; fillParameters(oraCmd,tmpObj); } private void fillParameters(SqlCommand oraCmd, Department tmpObj) { switch (this._op_flag) { case (int)op_flag.getObj: case (int)op_flag.delete: case (int)op_flag.getPk: oraCmd.Parameters.AddWithValue("@ID", tmpObj.ID); break; case (int)op_flag.queryAll: case 0: case (int)op_flag.queryActived: return; case (int)op_flag.update: oraCmd.Parameters.AddWithValue("@ID", tmpObj.ID); break; } if ((_op_flag !=(int)op_flag.update) &&( _op_flag !=(int)op_flag.add)) return; <% foreach (ColumnSchema column in this.SourceTable.Columns) { %> oraCmd.Parameters.AddWithValue("@<%=column.Name %>", VerifyDbnull(tmpObj._<%=column.Name %>)) ; <% } %> } } #endregion }