T 4自動生成データベースC#エンティティークラス学習(1)
8796 ワード
最初のテストのDemo
1 <#@ template language="C#" debug="True" hostspecific="True" #>
2 <#@ output extension=".cs" #>
3 <#@ assembly name="System.Data" #>
4
5 <#@ assembly name="System.xml" #>
6 <#@ assembly name="System.Data.OracleClient" #>
7 <#@ import namespace="System.Collections.Generic" #>
8 <#@ import namespace="System.Data.OracleClient" #>
9 <#@ import namespace="System.Data" #>
10
11 using System;
12 using System.Xml;
13 using System.Data;
14 using System.Data.OracleClient;
15
16 namespace MyProject.Entities
17 {
18 <#
19 string connectionString = "Data Source=orcl;User ID=sde;PassWord=sde";
20 OracleConnection conn = new OracleConnection(connectionString);
21 conn.Open();
22 string tableName= "T_USER";
23 string selectQuery = "select * from @tableName";
24 OracleCommand command = new OracleCommand(selectQuery,conn);
25 System.Data.DataSet ds = new DataSet();
26 #>
27
28 public class <#= tableName#>
29 {
30 <#
31 ds.Tables.Clear();
32 OracleDataAdapter ad=new OracleDataAdapter(command);
33 command.CommandText = selectQuery.Replace("@tableName", tableName);
34
35 ad.FillSchema(ds, SchemaType.Mapped, tableName);
36
37 foreach (DataColumn dc in ds.Tables[0].Columns)
38 {
39 #>
40
41 private <#= dc.DataType.Name #> _<#= dc.ColumnName.Replace(dc.ColumnName[0].ToString(), dc.ColumnName[0].ToString().ToLower()) #>;
42
43
44 public <#= dc.DataType.Name #> <#= dc.ColumnName #>
45 {
46 get { return _<#= dc.ColumnName.Replace(dc.ColumnName[0].ToString(), dc.ColumnName[0].ToString().ToLower()) #>; }
47 set { _<#= dc.ColumnName.Replace(dc.ColumnName[0].ToString(), dc.ColumnName[0].ToString().ToLower()) #> = value; }
48 }
49
50 <#
51 }
52 #>
53
54
55 }
56
57 <#
58 #>
59 }