Enterprise Solution 솔리드 데이터 액세스 인터페이스 생성 및 구현 유형 Code Smith 6.5 템플릿 파일 다운로드

30355 단어 code
데이터베이스 테이블은 SalesOrder로 정의되고 LLBL Gen Pro로 생성된 실체 정의는 SalesOrder Entity이며 코드Smith로 생성된 데이터 읽기와 쓰기 인터페이스는 ISales Order Manager이고 마지막으로 인터페이스 생성 실현 유형인 SalesOrder Manager이다.
명명 규칙은 다음과 같습니다.
SalesOrder => SalesOrderEntity => ISalesOrderManager => SalesOrderManager
이 과정은 고도로 기계화되고 인터페이스와 실현 유형 생성이 완성되며 프레임워크에 호출되면 데이터 읽기와 쓰기를 완성할 수 있다.인터페이스와 실현류는 만능의 인터페이스로 임의의 조건의 조회와 수정 수요를 만족시킬 수 있다.
Interface.cst 인터페이스 파일:
<%@ CodeTemplate Language="C#" TargetLanguage="C#" Src="" Inherits="" Debug="True" Description="Template description here." %>
<%--<%@ Property Name="ProjectName" Type="System.String" Default="" Optional="False" Category="Project" Description="" %>
--%>
<%@ Property Name="AssemblyFile" Type="System.String" Default="" Optional="False" Category="Project" Description="" 
 Editor="System.Windows.Forms.Design.FileNameEditor"%>
<%@ Property Name="SourceTable" Type="SchemaExplorer.TableSchema" Category="Project"  Description="" %>

<%@ Assembly Name="System.Data" %>
<%@ Import Namespace="System.Data" %>
<%@ Assembly Name="SchemaExplorer" %>
<%@ Import Namespace="SchemaExplorer" %>

<%@ Assembly Name="SD.LLBLGen.Pro.ORMSupportClasses.NET20" %>
<%@ Import Namespace="SD.LLBLGen.Pro.ORMSupportClasses" %>
<%@ Import Namespace="Foundation" %>
<%@ Assembly Name="Foundation.Common" %>

using System.Collections.Generic;
using System.Data;
using System.Text;
using SD.LLBLGen.Pro.ORMSupportClasses;

using <%=GetBusinessLogicProjectName%>;
using <%=GetBusinessLogicProjectName%>.FactoryClasses;
using <%=GetBusinessLogicProjectName%>.EntityClasses;
using <%=GetBusinessLogicProjectName%>.HelperClasses;
using <%=GetBusinessLogicProjectName%>.InterfaceClasses;
using <%=GetBusinessLogicProjectName%>.DatabaseSpecific;

<%-- using <%=ProjectName%>.Managers;
 --%>
<script runat="template">

public string GetEntityName
{
    get 
    {
       string  entityName;      
       entityName=EntityClassHelper.GetEntityName(SourceTable.Name,AssemblyFile);
       entityName=EntityClassHelper.TrimEntityName(entityName);
       return entityName;
    }
}

public string GetFullEntityName
{
    get 
    {
      string  entityName;
      entityName=EntityClassHelper.GetEntityName(SourceTable.Name,AssemblyFile);    
      return entityName;
    }
}

public string JudgeCommon(int i, int length)
{
    if(i==length) return "";
    else return ",";
}

public string TrimEntityLowercaseName
{
    get 
    {
        string  entityName;    
        entityName=EntityClassHelper.GetEntityName(SourceTable.Name,AssemblyFile);
        entityName=EntityClassHelper.TrimEntityName(entityName);
        entityName=EntityClassHelper.TrimEntityLowercaseName(entityName);
        return entityName;
    }
}

public string GetBusinessLogicProjectName
{
    get 
    {
        string  prjojectName=EntityClassHelper.PrefixProjectName(AssemblyFile);    
        return prjojectName;
    } 
}

</script>
<%-- DataType get AnsiString
SystemType get System.String
 --%>
namespace <%=GetBusinessLogicProjectName%>.InterfaceClasses
{
    public interface I<%=GetEntityName%>Manager
    {
         <%=GetFullEntityName%> Get<%=GetEntityName%>(<% for (int i = 0; i < SourceTable.PrimaryKey.MemberColumns.Count; i++) { %><%=SourceTable.PrimaryKey.MemberColumns[i].SystemType %> <%= EntityClassHelper.TrimFieldName(SourceTable.PrimaryKey.MemberColumns[i].Name)%><%=JudgeCommon(i,SourceTable.PrimaryKey.MemberColumns.Count-1)%><% } %>);
         <%=GetFullEntityName%> Get<%=GetEntityName%>(<% for (int i = 0; i < SourceTable.PrimaryKey.MemberColumns.Count; i++) { %><%=SourceTable.PrimaryKey.MemberColumns[i].SystemType %> <%= EntityClassHelper.TrimFieldName(SourceTable.PrimaryKey.MemberColumns[i].Name)%><%=JudgeCommon(i,SourceTable.PrimaryKey.MemberColumns.Count-1)%><% } %>,IPrefetchPath2 prefetchPath);
         <%=GetFullEntityName%> Get<%=GetEntityName%>(<% for (int i = 0; i < SourceTable.PrimaryKey.MemberColumns.Count; i++) { %><%=SourceTable.PrimaryKey.MemberColumns[i].SystemType %> <%= EntityClassHelper.TrimFieldName(SourceTable.PrimaryKey.MemberColumns[i].Name)%><%=JudgeCommon(i,SourceTable.PrimaryKey.MemberColumns.Count-1)%><% } %>,IPrefetchPath2 prefetchPath,ExcludeIncludeFieldsList fieldList);
    
         EntityCollection Get<%=GetEntityName%>Collection(IRelationPredicateBucket filterBucket);
         EntityCollection Get<%=GetEntityName%>Collection(IRelationPredicateBucket filterBucket,ISortExpression sortExpression);
         EntityCollection Get<%=GetEntityName%>Collection(IRelationPredicateBucket filterBucket,ISortExpression sortExpression, IPrefetchPath2 prefetchPath);
         EntityCollection Get<%=GetEntityName%>Collection(IRelationPredicateBucket filterBucket, ISortExpression sortExpression, IPrefetchPath2 prefetchPath, ExcludeIncludeFieldsList fieldList);
    
         <%=GetFullEntityName%>  Save<%=GetEntityName%>(<%=GetFullEntityName%>  <%=TrimEntityLowercaseName%>);
         <%=GetFullEntityName%>  Save<%=GetEntityName%>(<%=GetFullEntityName%>  <%=TrimEntityLowercaseName%> ,EntityCollection entitiesToDelete);
         <%=GetFullEntityName%>  Save<%=GetEntityName%>(<%=GetFullEntityName%> <%=TrimEntityLowercaseName%>, EntityCollection entitiesToDelete, string seriesCode);
    
         void Delete<%=GetEntityName%>(<%=GetFullEntityName%>  <%=TrimEntityLowercaseName%>);
    
         bool Is<%=GetEntityName%>Exist(<% for (int i = 0; i < SourceTable.PrimaryKey.MemberColumns.Count; i++) { %><%=SourceTable.PrimaryKey.MemberColumns[i].SystemType %> <%= EntityClassHelper.TrimFieldName(SourceTable.PrimaryKey.MemberColumns[i].Name)%><%=JudgeCommon(i,SourceTable.PrimaryKey.MemberColumns.Count-1)%><% } %>);
         bool Is<%=GetEntityName%>Exist(IRelationPredicateBucket filterBucket);
         int  Get<%=GetEntityName%>Count(IRelationPredicateBucket filterBucket);
        
         <%=GetFullEntityName%> Clone<%=GetEntityName%>(<% for (int i = 0; i < SourceTable.PrimaryKey.MemberColumns.Count; i++) { %><%=SourceTable.PrimaryKey.MemberColumns[i].SystemType %> <%= EntityClassHelper.TrimFieldName(SourceTable.PrimaryKey.MemberColumns[i].Name)%><%=JudgeCommon(i,SourceTable.PrimaryKey.MemberColumns.Count-1)%><% } %>);
         void Post<%=GetEntityName%>(<% for (int i = 0; i < SourceTable.PrimaryKey.MemberColumns.Count; i++) { %><%=SourceTable.PrimaryKey.MemberColumns[i].SystemType %> <%= EntityClassHelper.TrimFieldName(SourceTable.PrimaryKey.MemberColumns[i].Name)%><%=JudgeCommon(i,SourceTable.PrimaryKey.MemberColumns.Count-1)%><% } %>);
         void Post<%=GetEntityName%>(<%=GetFullEntityName%> <%=TrimEntityLowercaseName%>);    
    }
}


.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
Manager.cst 인터페이스 구현 파일:
<%@ CodeTemplate Language="C#"    TargetLanguage="C#" Src="" Inherits="" Debug="True" Description="Template description here." %>
<%--<%@ Property Name="ProjectName" Type="System.String" Default="" Optional="False" Category="Project" Description="????" %>
--%>
<%@ Property Name="AssemblyFile" Type="System.String" Default="" Optional="False" Category="Project" Description="" Editor="System.Windows.Forms.Design.FileNameEditor" %>
<%@ Property Name="SourceTable" Type="SchemaExplorer.TableSchema" Category="Project"  Description="" %>

<%@ Assembly Name="System.Data" %>
<%@ Import Namespace="System.Data" %>
<%@ Assembly Name="SchemaExplorer" %>
<%@ Import Namespace="SchemaExplorer" %>

<%@ Assembly Name="SD.LLBLGen.Pro.ORMSupportClasses.NET20" %>
<%@ Import Namespace="SD.LLBLGen.Pro.ORMSupportClasses" %>
<%@ Import Namespace="Foundation" %>
<%@ Assembly Name="Foundation.Common" %>
using System;
using System.Collections.Generic;
using System.Data;
using System.Text;
using SD.LLBLGen.Pro.ORMSupportClasses;
using <%=GetBusinessLogicProjectName%>;
using <%=GetBusinessLogicProjectName%>.FactoryClasses;
using <%=GetBusinessLogicProjectName%>.EntityClasses;
using <%=GetBusinessLogicProjectName%>.HelperClasses;
using <%=GetBusinessLogicProjectName%>.InterfaceClasses;
using <%=GetBusinessLogicProjectName%>.DatabaseSpecific;
using <%=GetBusinessLogicProjectName%>.Managers;
using Foundation.Common;
<%--using EntityCollection = <%=GetBusinessLogicProjectName%>.HelperClasses.EntityCollection;
--%>
<script runat="template">

public string GetEntityName
{
    get 
    {
        string  entityName;
        //Debugger.Break(); 
        entityName=EntityClassHelper.GetEntityName(SourceTable.Name,AssemblyFile);
        entityName=EntityClassHelper.TrimEntityName(entityName);
        return entityName;
    }
}

public string GetFullEntityName
{
    get 
    {
        string  entityName;
        //Debugger.Break(); 
        entityName=EntityClassHelper.GetEntityName(SourceTable.Name,AssemblyFile);    
        return entityName;
    }
}

public string JudgeCommon(int i, int length)
{
    if(i==length) return "";
    else return ",";
}

public string GetBusinessLogicProjectName
{
    get 
    {
       string  prjojectName=EntityClassHelper.PrefixProjectName(AssemblyFile);    
       return prjojectName;
    }
}

</script>

namespace <%=GetBusinessLogicProjectName%>.Managers
{
       [RemoteService("<%=GetEntityName%>Manager")]
    public class <%=GetEntityName%>Manager :   Foundation.Common.ManagerBase, I<%=GetEntityName%>Manager
    {
        public <%=GetFullEntityName%> Get<%=GetEntityName%>(<% for (int i = 0; i < SourceTable.PrimaryKey.MemberColumns.Count; i++) { %><%=SourceTable.PrimaryKey.MemberColumns[i].SystemType %> <%= EntityClassHelper.TrimFieldName(SourceTable.PrimaryKey.MemberColumns[i].Name)%><%=JudgeCommon(i,SourceTable.PrimaryKey.MemberColumns.Count-1)%><% } %>)
        {
            return Get<%=GetEntityName%>(<% for (int i = 0; i < SourceTable.PrimaryKey.MemberColumns.Count; i++) { %><%= EntityClassHelper.TrimFieldName(SourceTable.PrimaryKey.MemberColumns[i].Name)%><%=JudgeCommon(i,SourceTable.PrimaryKey.MemberColumns.Count-1)%><% } %>,null);
        }

        public <%=GetFullEntityName%> Get<%=GetEntityName%>(<% for (int i = 0; i < SourceTable.PrimaryKey.MemberColumns.Count; i++) { %><%=SourceTable.PrimaryKey.MemberColumns[i].SystemType %> <%= EntityClassHelper.TrimFieldName(SourceTable.PrimaryKey.MemberColumns[i].Name)%><%=JudgeCommon(i,SourceTable.PrimaryKey.MemberColumns.Count-1)%><% } %>,IPrefetchPath2 prefetchPath)
        {
            return Get<%=GetEntityName%>(<% for (int i = 0; i < SourceTable.PrimaryKey.MemberColumns.Count; i++) { %><%= EntityClassHelper.TrimFieldName(SourceTable.PrimaryKey.MemberColumns[i].Name)%><%=JudgeCommon(i,SourceTable.PrimaryKey.MemberColumns.Count-1)%><% } %>,prefetchPath,null);
        }
          
        public <%=GetFullEntityName%> Get<%=GetEntityName%>(<% for (int i = 0; i < SourceTable.PrimaryKey.MemberColumns.Count; i++) { %><%=SourceTable.PrimaryKey.MemberColumns[i].SystemType %> <%= EntityClassHelper.TrimFieldName(SourceTable.PrimaryKey.MemberColumns[i].Name)%><%=JudgeCommon(i,SourceTable.PrimaryKey.MemberColumns.Count-1)%><% } %>,IPrefetchPath2 prefetchPath,ExcludeIncludeFieldsList fieldList)
        {
            <%=GetFullEntityName%>  _<%=GetEntityName%>=new <%=GetFullEntityName%>(<% for (int i = 0; i < SourceTable.PrimaryKey.MemberColumns.Count; i++) { %><%= EntityClassHelper.TrimFieldName(SourceTable.PrimaryKey.MemberColumns[i].Name)%><%=JudgeCommon(i,SourceTable.PrimaryKey.MemberColumns.Count-1)%><% } %>);
            using (DataAccessAdapterBase adapter=GetCompanyDataAccessAdapter())
            {
                bool found=adapter.FetchEntity(_<%=GetEntityName%>, prefetchPath, null, fieldList);
                if (!found) throw new Foundation.Common.RecordNotFoundException("Invalid <%=GetEntityName%>");
            }
            return _<%=GetEntityName%>;
        }
        
        public EntityCollection Get<%=GetEntityName%>Collection(IRelationPredicateBucket filterBucket)
        {
            return   Get<%=GetEntityName%>Collection(filterBucket,null);
        }
        
        public EntityCollection Get<%=GetEntityName%>Collection(IRelationPredicateBucket filterBucket,ISortExpression sortExpression)
        {
            return   Get<%=GetEntityName%>Collection(filterBucket,sortExpression,null);
        }
        
        public EntityCollection Get<%=GetEntityName%>Collection(IRelationPredicateBucket filterBucket,ISortExpression sortExpression, IPrefetchPath2 prefetchPath)
        {
            return   Get<%=GetEntityName%>Collection(filterBucket,sortExpression,prefetchPath,null);
        }
        
        public EntityCollection Get<%=GetEntityName%>Collection(IRelationPredicateBucket filterBucket, ISortExpression sortExpression, IPrefetchPath2 prefetchPath, ExcludeIncludeFieldsList fieldList)
        {
            EntityCollection <%=GetEntityName%>Collection =new  EntityCollection(new  <%=GetEntityName%>EntityFactory());
            using (DataAccessAdapterBase adapter =GetCompanyDataAccessAdapter())
            {
                adapter.FetchEntityCollection(<%=GetEntityName%>Collection, filterBucket, 0,sortExpression, prefetchPath, fieldList);
            }
            return  <%=GetEntityName%>Collection ;
        }
        
        
        public <%=GetFullEntityName%>  Save<%=GetEntityName%>(<%=GetFullEntityName%>  <%=GetEntityName%>)
        {
            return Save<%=GetEntityName%>(<%=GetEntityName%>,null);
        }
        
        public <%=GetFullEntityName%>  Save<%=GetEntityName%>(<%=GetFullEntityName%>  <%=GetEntityName%> ,EntityCollection entitiesToDelete)
        {
            return Save<%=GetEntityName%>(<%=GetEntityName%>,entitiesToDelete,string.Empty);
        }        
        
        public <%=GetFullEntityName%>  Save<%=GetEntityName%>(<%=GetFullEntityName%> <%=GetEntityName%>, EntityCollection entitiesToDelete, string seriesCode)
        {
            using (DataAccessAdapterBase adapter =GetCompanyDataAccessAdapter())
            {
                try
                {
                    adapter.StartTransaction(IsolationLevel.ReadCommitted, "Save<%=GetEntityName%>");
                    adapter.SaveEntity(<%=GetEntityName%>, true, false);
                    adapter.Commit();
                }
                catch
                {
                    adapter.Rollback();
                    throw;
                }
            }
            return <%=GetEntityName%>;
        }
        
        public void Delete<%=GetEntityName%>(<%=GetFullEntityName%>  <%=GetEntityName%>)
        {
            using (DataAccessAdapterBase adapter =GetCompanyDataAccessAdapter())
            {
                if (!adapter.IsEntityExist<<%=GetFullEntityName%>>(<%=GetEntityName%>))
                return;

            try
            {
                adapter.StartTransaction(IsolationLevel.ReadCommitted, "Delete<%=GetEntityName%>");
                adapter.DeleteEntity(<%=GetEntityName%>);
                adapter.Commit();
            }
            catch
            {
                adapter.Rollback();
                throw;
            }
            }
        }        
        
        public bool Is<%=GetEntityName%>Exist(<% for (int i = 0; i < SourceTable.PrimaryKey.MemberColumns.Count; i++) { %><%=SourceTable.PrimaryKey.MemberColumns[i].SystemType %> <%= EntityClassHelper.TrimFieldName(SourceTable.PrimaryKey.MemberColumns[i].Name)%><%=JudgeCommon(i,SourceTable.PrimaryKey.MemberColumns.Count-1)%><% } %>)
        {
            RelationPredicateBucket filterBucket = new RelationPredicateBucket();
            <% for (int i = 0; i < SourceTable.PrimaryKey.MemberColumns.Count; i++) { %>            
            filterBucket.PredicateExpression.Add(<%=GetEntityName%>Fields.<%=EntityClassHelper.TrimFieldName(SourceTable.PrimaryKey.MemberColumns[i].Name)%>==<%=EntityClassHelper.TrimFieldName(SourceTable.PrimaryKey.MemberColumns[i].Name)%>);        
            <% } %>
            return Is<%=GetEntityName%>Exist(filterBucket);
        }
        
        public bool Is<%=GetEntityName%>Exist(IRelationPredicateBucket filterBucket)
        {
            return (Get<%=GetEntityName%>Count(filterBucket) > 0);
        }

        public int Get<%=GetEntityName%>Count(IRelationPredicateBucket filterBucket)
        {
            using (DataAccessAdapterBase adapter =GetCompanyDataAccessAdapter())
            {
                return adapter.GetDbCount<<%=GetFullEntityName%>>(filterBucket);
            }
        }
        
        public <%=GetFullEntityName%> Clone<%=GetEntityName%>(<% for (int i = 0; i < SourceTable.PrimaryKey.MemberColumns.Count; i++) { %><%=SourceTable.PrimaryKey.MemberColumns[i].SystemType %> <%= EntityClassHelper.TrimFieldName(SourceTable.PrimaryKey.MemberColumns[i].Name)%><%=JudgeCommon(i,SourceTable.PrimaryKey.MemberColumns.Count-1)%><% } %>)  
        {
            <%=GetFullEntityName%>   source = this.Get<%=GetEntityName%>(<% for (int i = 0; i < SourceTable.PrimaryKey.MemberColumns.Count; i++) { %><%= EntityClassHelper.TrimFieldName(SourceTable.PrimaryKey.MemberColumns[i].Name)%><%=JudgeCommon(i,SourceTable.PrimaryKey.MemberColumns.Count-1)%><% } %>);  
            <%=GetFullEntityName%>   _<%=GetEntityName%> = (<%=GetFullEntityName%>)CloneEntity(source);
            <%-- //try to remove all primary key 
            //currency.Ccy = string.Empty;
            //currency.CreatedBy = Shared.CurrentUser.UserId; 
            //currency.CreatedDate = DateTime.Now;  
            //currency.RevisedBy = Shared.CurrentUser.UserId;  
            //currency.RevisedDate = DateTime.Now;   --%>
            return _<%=GetEntityName%>;
        }

        public void Post<%=GetEntityName%>(<% for (int i = 0; i < SourceTable.PrimaryKey.MemberColumns.Count; i++) { %><%=SourceTable.PrimaryKey.MemberColumns[i].SystemType %> <%= EntityClassHelper.TrimFieldName(SourceTable.PrimaryKey.MemberColumns[i].Name)%><%=JudgeCommon(i,SourceTable.PrimaryKey.MemberColumns.Count-1)%><% } %>)  
        {
            return;
        }
        public void Post<%=GetEntityName%>(<%=GetFullEntityName%> <%=GetEntityName%>)
        {
            return;
        }
    }
}


.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }

좋은 웹페이지 즐겨찾기