[Table(TableName ="dbo.emp")] public Class Emp { [Column(ColumnName="ID")] public int ID {get; set;} }
/// <summary> /// 获得单个实体 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="dt"></param> /// <returns></returns> public static T Entity<T>(DataRow dr) { if (dr == null) { return default(T); } T entity = default(T); entity = Activator.CreateInstance<T>(); PropertyInfo[] pis = entity.GetType().GetProperties(); foreach (PropertyInfo pi in pis) { if (dr[pi.Name] != null) { if (!pi.CanWrite) { continue; } if (dr[pi.Name] != DBNull.Value) { Type t = pi.PropertyType; if (t.FullName == "System.Guid") { pi.SetValue(entity, Guid.Parse(dr[pi.Name].ToString()), null); } else { pi.SetValue(entity, dr[pi.Name], null); } } } } return entity; }
不是很明白,实体类如下 namespace Eefo.BusinessEntity { using System; using System.Collections; using System.Data; using PersistenceLayer;
/// <summary>该类的摘要说明</summary> public class TB_ZSK_XZSP_01Entity : EntityObject { /// <summary>NB_ID</summary> public const string @__NB_ID = "NB_ID"; /// <summary>VAR_DWMC</summary> public const string @__VAR_DWMC = "VAR_DWMC"; /// <summary>VAR_TITLE</summary> public const string @__VAR_TITLE = "VAR_TITLE"; /// <summary>LG_CONTENT</summary> public const string @__LG_CONTENT = "LG_CONTENT"; /// <summary>VAR_FLYJ</summary> public const string @__VAR_FLYJ = "VAR_FLYJ"; /// <summary>VAR_ADDRESS</summary> public const string @__VAR_ADDRESS = "VAR_ADDRESS"; /// <summary>NB_SFYX</summary> public const string @__NB_SFYX = "NB_SFYX"; /// <summary>DT_TJSJ</summary> public const string @__DT_TJSJ = "DT_TJSJ"; /// <summary>VAR_TJZH</summary> public const string @__VAR_TJZH = "VAR_TJZH"; /// <summary>VAR_ORGCODE</summary> public const string @__VAR_ORGCODE = "VAR_ORGCODE"; /// <summary>DT_BJSJ</summary> public const string @__DT_BJSJ = "DT_BJSJ"; /// <summary>VAR_BJZH</summary> public const string @__VAR_BJZH = "VAR_BJZH"; /// <summary>VAR_ZSKNO</summary> public const string @__VAR_ZSKNO = "VAR_ZSKNO"; private decimal m_NB_ID; private string m_VAR_DWMC; private string m_VAR_TITLE; private string m_LG_CONTENT; private string m_VAR_FLYJ; private string m_VAR_ADDRESS; private decimal m_NB_SFYX; private System.DateTime m_DT_TJSJ = new DateTime(1900,1,1); private string m_VAR_TJZH; private string m_VAR_ORGCODE; private System.DateTime m_DT_BJSJ = new DateTime(1900,1,1); private string m_VAR_BJZH; private string m_VAR_ZSKNO; public TB_ZSK_XZSP_01Entity() { } /// <summary>属性NB_ID </summary> public decimal NB_ID { get { return this.m_NB_ID; } set { this.m_NB_ID = value; } } /// <summary>属性VAR_DWMC </summary> public string VAR_DWMC { get { return this.m_VAR_DWMC; } set { this.m_VAR_DWMC = value; } } /// <summary>属性VAR_TITLE </summary> public string VAR_TITLE { get { return this.m_VAR_TITLE; } set { this.m_VAR_TITLE = value; } } /// <summary>属性LG_CONTENT </summary> public string LG_CONTENT { get { return this.m_LG_CONTENT; } set { this.m_LG_CONTENT = value; } } /// <summary>属性VAR_FLYJ </summary> public string VAR_FLYJ { get { return this.m_VAR_FLYJ; } set { this.m_VAR_FLYJ = value; } } /// <summary>属性VAR_ADDRESS </summary> public string VAR_ADDRESS { get { return this.m_VAR_ADDRESS; } set { this.m_VAR_ADDRESS = value; } } /// <summary>属性NB_SFYX </summary> public decimal NB_SFYX { get { return this.m_NB_SFYX; } set { this.m_NB_SFYX = value; } } /// <summary>属性DT_TJSJ </summary> public System.DateTime DT_TJSJ { get { return this.m_DT_TJSJ; } set { this.m_DT_TJSJ = value; } } /// <summary>属性VAR_TJZH </summary> public string VAR_TJZH { get { return this.m_VAR_TJZH; } set { this.m_VAR_TJZH = value; } } /// <summary>属性VAR_ORGCODE </summary> public string VAR_ORGCODE { get { return this.m_VAR_ORGCODE; } set { this.m_VAR_ORGCODE = value; } } /// <summary>属性DT_BJSJ </summary> public System.DateTime DT_BJSJ { get { return this.m_DT_BJSJ; } set { this.m_DT_BJSJ = value; } } /// <summary>属性VAR_BJZH </summary> public string VAR_BJZH { get { return this.m_VAR_BJZH; } set { this.m_VAR_BJZH = value; } } /// <summary>属性VAR_ZSKNO </summary> public string VAR_ZSKNO { get { return this.m_VAR_ZSKNO; } set { this.m_VAR_ZSKNO = value; } } }
不是很明白,实体类如下 namespace Eefo.BusinessEntity { using System; using System.Collections; using System.Data; using PersistenceLayer;
/// <summary>该类的摘要说明</summary> public class TB_ZSK_XZSP_01Entity : EntityObject { /// <summary>NB_ID</summary> public const string @__NB_ID = "NB_ID"; /// <summary>VAR_DWMC</summary> public const string @__VAR_DWMC = "VAR_DWMC"; /// <summary>VAR_TITLE</summary> public const string @__VAR_TITLE = "VAR_TITLE"; /// <summary>LG_CONTENT</summary> public const string @__LG_CONTENT = "LG_CONTENT"; /// <summary>VAR_FLYJ</summary> public const string @__VAR_FLYJ = "VAR_FLYJ"; /// <summary>VAR_ADDRESS</summary> public const string @__VAR_ADDRESS = "VAR_ADDRESS"; /// <summary>NB_SFYX</summary> public const string @__NB_SFYX = "NB_SFYX"; /// <summary>DT_TJSJ</summary> public const string @__DT_TJSJ = "DT_TJSJ"; /// <summary>VAR_TJZH</summary> public const string @__VAR_TJZH = "VAR_TJZH"; /// <summary>VAR_ORGCODE</summary> public const string @__VAR_ORGCODE = "VAR_ORGCODE"; /// <summary>DT_BJSJ</summary> public const string @__DT_BJSJ = "DT_BJSJ"; /// <summary>VAR_BJZH</summary> public const string @__VAR_BJZH = "VAR_BJZH"; /// <summary>VAR_ZSKNO</summary> public const string @__VAR_ZSKNO = "VAR_ZSKNO"; private decimal m_NB_ID; private string m_VAR_DWMC; private string m_VAR_TITLE; private string m_LG_CONTENT; private string m_VAR_FLYJ; private string m_VAR_ADDRESS; private decimal m_NB_SFYX; private System.DateTime m_DT_TJSJ = new DateTime(1900,1,1); private string m_VAR_TJZH; private string m_VAR_ORGCODE; private System.DateTime m_DT_BJSJ = new DateTime(1900,1,1); private string m_VAR_BJZH; private string m_VAR_ZSKNO; public TB_ZSK_XZSP_01Entity() { } /// <summary>属性NB_ID </summary> public decimal NB_ID { get { return this.m_NB_ID; } set { this.m_NB_ID = value; } } /// <summary>属性VAR_DWMC </summary> public string VAR_DWMC { get { return this.m_VAR_DWMC; } set { this.m_VAR_DWMC = value; } } /// <summary>属性VAR_TITLE </summary> public string VAR_TITLE { get { return this.m_VAR_TITLE; } set { this.m_VAR_TITLE = value; } } /// <summary>属性LG_CONTENT </summary> public string LG_CONTENT { get { return this.m_LG_CONTENT; } set { this.m_LG_CONTENT = value; } } /// <summary>属性VAR_FLYJ </summary> public string VAR_FLYJ { get { return this.m_VAR_FLYJ; } set { this.m_VAR_FLYJ = value; } } /// <summary>属性VAR_ADDRESS </summary> public string VAR_ADDRESS { get { return this.m_VAR_ADDRESS; } set { this.m_VAR_ADDRESS = value; } } /// <summary>属性NB_SFYX </summary> public decimal NB_SFYX { get { return this.m_NB_SFYX; } set { this.m_NB_SFYX = value; } } /// <summary>属性DT_TJSJ </summary> public System.DateTime DT_TJSJ { get { return this.m_DT_TJSJ; } set { this.m_DT_TJSJ = value; } } /// <summary>属性VAR_TJZH </summary> public string VAR_TJZH { get { return this.m_VAR_TJZH; } set { this.m_VAR_TJZH = value; } } /// <summary>属性VAR_ORGCODE </summary> public string VAR_ORGCODE { get { return this.m_VAR_ORGCODE; } set { this.m_VAR_ORGCODE = value; } } /// <summary>属性DT_BJSJ </summary> public System.DateTime DT_BJSJ { get { return this.m_DT_BJSJ; } set { this.m_DT_BJSJ = value; } } /// <summary>属性VAR_BJZH </summary> public string VAR_BJZH { get { return this.m_VAR_BJZH; } set { this.m_VAR_BJZH = value; } } /// <summary>属性VAR_ZSKNO </summary> public string VAR_ZSKNO { get { return this.m_VAR_ZSKNO; } set { this.m_VAR_ZSKNO = value; } } }看你的代码,你的类自定义属性中并没有DataContextAttribute这个属性 当然没有值了 GetCustomerAttributes 获取的是属性上的自定义属性值比如 public class Test { [“自定义属性”] public int Id {get;set;} }
你的实体类中没有Attribute public class Test { [“自定义属性”]//看这里 public int Id {get;set;} } 你的类的属性上面那个有中括号?
哦,意思是说每个字段前面我都要加上["DataContextAttribute"]这样就行了吗 public class Test { [“DataContextAttribute”] public int Id {get;set;} [“DataContextAttribute”] public int name {get;set;} }
[Table(TableName ="dbo.emp")]
public Class Emp
{
[Column(ColumnName="ID")]
public int ID {get; set;}
}
/// <summary>
/// 获得单个实体
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="dt"></param>
/// <returns></returns>
public static T Entity<T>(DataRow dr)
{
if (dr == null)
{
return default(T);
}
T entity = default(T); entity = Activator.CreateInstance<T>();
PropertyInfo[] pis = entity.GetType().GetProperties();
foreach (PropertyInfo pi in pis)
{
if (dr[pi.Name] != null)
{
if (!pi.CanWrite)
{
continue;
}
if (dr[pi.Name] != DBNull.Value)
{
Type t = pi.PropertyType;
if (t.FullName == "System.Guid")
{
pi.SetValue(entity, Guid.Parse(dr[pi.Name].ToString()), null);
}
else
{
pi.SetValue(entity, dr[pi.Name], null);
}
}
}
} return entity;
}
namespace Eefo.BusinessEntity
{
using System;
using System.Collections;
using System.Data;
using PersistenceLayer;
/// <summary>该类的摘要说明</summary>
public class TB_ZSK_XZSP_01Entity : EntityObject
{
/// <summary>NB_ID</summary>
public const string @__NB_ID = "NB_ID";
/// <summary>VAR_DWMC</summary>
public const string @__VAR_DWMC = "VAR_DWMC";
/// <summary>VAR_TITLE</summary>
public const string @__VAR_TITLE = "VAR_TITLE";
/// <summary>LG_CONTENT</summary>
public const string @__LG_CONTENT = "LG_CONTENT";
/// <summary>VAR_FLYJ</summary>
public const string @__VAR_FLYJ = "VAR_FLYJ";
/// <summary>VAR_ADDRESS</summary>
public const string @__VAR_ADDRESS = "VAR_ADDRESS";
/// <summary>NB_SFYX</summary>
public const string @__NB_SFYX = "NB_SFYX";
/// <summary>DT_TJSJ</summary>
public const string @__DT_TJSJ = "DT_TJSJ";
/// <summary>VAR_TJZH</summary>
public const string @__VAR_TJZH = "VAR_TJZH";
/// <summary>VAR_ORGCODE</summary>
public const string @__VAR_ORGCODE = "VAR_ORGCODE";
/// <summary>DT_BJSJ</summary>
public const string @__DT_BJSJ = "DT_BJSJ";
/// <summary>VAR_BJZH</summary>
public const string @__VAR_BJZH = "VAR_BJZH";
/// <summary>VAR_ZSKNO</summary>
public const string @__VAR_ZSKNO = "VAR_ZSKNO";
private decimal m_NB_ID;
private string m_VAR_DWMC;
private string m_VAR_TITLE;
private string m_LG_CONTENT;
private string m_VAR_FLYJ;
private string m_VAR_ADDRESS;
private decimal m_NB_SFYX;
private System.DateTime m_DT_TJSJ = new DateTime(1900,1,1);
private string m_VAR_TJZH;
private string m_VAR_ORGCODE;
private System.DateTime m_DT_BJSJ = new DateTime(1900,1,1);
private string m_VAR_BJZH;
private string m_VAR_ZSKNO;
public TB_ZSK_XZSP_01Entity()
{
}
/// <summary>属性NB_ID </summary>
public decimal NB_ID
{
get
{
return this.m_NB_ID;
}
set
{
this.m_NB_ID = value;
}
}
/// <summary>属性VAR_DWMC </summary>
public string VAR_DWMC
{
get
{
return this.m_VAR_DWMC;
}
set
{
this.m_VAR_DWMC = value;
}
}
/// <summary>属性VAR_TITLE </summary>
public string VAR_TITLE
{
get
{
return this.m_VAR_TITLE;
}
set
{
this.m_VAR_TITLE = value;
}
}
/// <summary>属性LG_CONTENT </summary>
public string LG_CONTENT
{
get
{
return this.m_LG_CONTENT;
}
set
{
this.m_LG_CONTENT = value;
}
}
/// <summary>属性VAR_FLYJ </summary>
public string VAR_FLYJ
{
get
{
return this.m_VAR_FLYJ;
}
set
{
this.m_VAR_FLYJ = value;
}
}
/// <summary>属性VAR_ADDRESS </summary>
public string VAR_ADDRESS
{
get
{
return this.m_VAR_ADDRESS;
}
set
{
this.m_VAR_ADDRESS = value;
}
}
/// <summary>属性NB_SFYX </summary>
public decimal NB_SFYX
{
get
{
return this.m_NB_SFYX;
}
set
{
this.m_NB_SFYX = value;
}
}
/// <summary>属性DT_TJSJ </summary>
public System.DateTime DT_TJSJ
{
get
{
return this.m_DT_TJSJ;
}
set
{
this.m_DT_TJSJ = value;
}
}
/// <summary>属性VAR_TJZH </summary>
public string VAR_TJZH
{
get
{
return this.m_VAR_TJZH;
}
set
{
this.m_VAR_TJZH = value;
}
}
/// <summary>属性VAR_ORGCODE </summary>
public string VAR_ORGCODE
{
get
{
return this.m_VAR_ORGCODE;
}
set
{
this.m_VAR_ORGCODE = value;
}
}
/// <summary>属性DT_BJSJ </summary>
public System.DateTime DT_BJSJ
{
get
{
return this.m_DT_BJSJ;
}
set
{
this.m_DT_BJSJ = value;
}
}
/// <summary>属性VAR_BJZH </summary>
public string VAR_BJZH
{
get
{
return this.m_VAR_BJZH;
}
set
{
this.m_VAR_BJZH = value;
}
}
/// <summary>属性VAR_ZSKNO </summary>
public string VAR_ZSKNO
{
get
{
return this.m_VAR_ZSKNO;
}
set
{
this.m_VAR_ZSKNO = value;
}
}
}
namespace Eefo.BusinessEntity
{
using System;
using System.Collections;
using System.Data;
using PersistenceLayer;
/// <summary>该类的摘要说明</summary>
public class TB_ZSK_XZSP_01Entity : EntityObject
{
/// <summary>NB_ID</summary>
public const string @__NB_ID = "NB_ID";
/// <summary>VAR_DWMC</summary>
public const string @__VAR_DWMC = "VAR_DWMC";
/// <summary>VAR_TITLE</summary>
public const string @__VAR_TITLE = "VAR_TITLE";
/// <summary>LG_CONTENT</summary>
public const string @__LG_CONTENT = "LG_CONTENT";
/// <summary>VAR_FLYJ</summary>
public const string @__VAR_FLYJ = "VAR_FLYJ";
/// <summary>VAR_ADDRESS</summary>
public const string @__VAR_ADDRESS = "VAR_ADDRESS";
/// <summary>NB_SFYX</summary>
public const string @__NB_SFYX = "NB_SFYX";
/// <summary>DT_TJSJ</summary>
public const string @__DT_TJSJ = "DT_TJSJ";
/// <summary>VAR_TJZH</summary>
public const string @__VAR_TJZH = "VAR_TJZH";
/// <summary>VAR_ORGCODE</summary>
public const string @__VAR_ORGCODE = "VAR_ORGCODE";
/// <summary>DT_BJSJ</summary>
public const string @__DT_BJSJ = "DT_BJSJ";
/// <summary>VAR_BJZH</summary>
public const string @__VAR_BJZH = "VAR_BJZH";
/// <summary>VAR_ZSKNO</summary>
public const string @__VAR_ZSKNO = "VAR_ZSKNO";
private decimal m_NB_ID;
private string m_VAR_DWMC;
private string m_VAR_TITLE;
private string m_LG_CONTENT;
private string m_VAR_FLYJ;
private string m_VAR_ADDRESS;
private decimal m_NB_SFYX;
private System.DateTime m_DT_TJSJ = new DateTime(1900,1,1);
private string m_VAR_TJZH;
private string m_VAR_ORGCODE;
private System.DateTime m_DT_BJSJ = new DateTime(1900,1,1);
private string m_VAR_BJZH;
private string m_VAR_ZSKNO;
public TB_ZSK_XZSP_01Entity()
{
}
/// <summary>属性NB_ID </summary>
public decimal NB_ID
{
get
{
return this.m_NB_ID;
}
set
{
this.m_NB_ID = value;
}
}
/// <summary>属性VAR_DWMC </summary>
public string VAR_DWMC
{
get
{
return this.m_VAR_DWMC;
}
set
{
this.m_VAR_DWMC = value;
}
}
/// <summary>属性VAR_TITLE </summary>
public string VAR_TITLE
{
get
{
return this.m_VAR_TITLE;
}
set
{
this.m_VAR_TITLE = value;
}
}
/// <summary>属性LG_CONTENT </summary>
public string LG_CONTENT
{
get
{
return this.m_LG_CONTENT;
}
set
{
this.m_LG_CONTENT = value;
}
}
/// <summary>属性VAR_FLYJ </summary>
public string VAR_FLYJ
{
get
{
return this.m_VAR_FLYJ;
}
set
{
this.m_VAR_FLYJ = value;
}
}
/// <summary>属性VAR_ADDRESS </summary>
public string VAR_ADDRESS
{
get
{
return this.m_VAR_ADDRESS;
}
set
{
this.m_VAR_ADDRESS = value;
}
}
/// <summary>属性NB_SFYX </summary>
public decimal NB_SFYX
{
get
{
return this.m_NB_SFYX;
}
set
{
this.m_NB_SFYX = value;
}
}
/// <summary>属性DT_TJSJ </summary>
public System.DateTime DT_TJSJ
{
get
{
return this.m_DT_TJSJ;
}
set
{
this.m_DT_TJSJ = value;
}
}
/// <summary>属性VAR_TJZH </summary>
public string VAR_TJZH
{
get
{
return this.m_VAR_TJZH;
}
set
{
this.m_VAR_TJZH = value;
}
}
/// <summary>属性VAR_ORGCODE </summary>
public string VAR_ORGCODE
{
get
{
return this.m_VAR_ORGCODE;
}
set
{
this.m_VAR_ORGCODE = value;
}
}
/// <summary>属性DT_BJSJ </summary>
public System.DateTime DT_BJSJ
{
get
{
return this.m_DT_BJSJ;
}
set
{
this.m_DT_BJSJ = value;
}
}
/// <summary>属性VAR_BJZH </summary>
public string VAR_BJZH
{
get
{
return this.m_VAR_BJZH;
}
set
{
this.m_VAR_BJZH = value;
}
}
/// <summary>属性VAR_ZSKNO </summary>
public string VAR_ZSKNO
{
get
{
return this.m_VAR_ZSKNO;
}
set
{
this.m_VAR_ZSKNO = value;
}
}
}看你的代码,你的类自定义属性中并没有DataContextAttribute这个属性 当然没有值了
GetCustomerAttributes 获取的是属性上的自定义属性值比如
public class Test
{
[“自定义属性”]
public int Id {get;set;}
}
public class Test
{
[“自定义属性”]//看这里
public int Id {get;set;}
}
你的类的属性上面那个有中括号?
public class Test
{
[“DataContextAttribute”]
public int Id {get;set;}
[“DataContextAttribute”]
public int name {get;set;}
}