当前位置: 首页 > news >正文

网站开发及推广是怎么回事企业模板

网站开发及推广是怎么回事,企业模板,禹城网站建设价格,青岛网站设计选哪家1.自定义 表名属性 TableNameAttribute2.自定义 主键属性 PrimaryKeyAttribute3.自定义 列名属性 TableColumnAttribute 4.数据表person对应的实体类person.cs5.获得person.cs类型实体 对应的表名及字段名 下面的属性代码文件 都直接建立在App_Code下 以方便使用 1.自定义 表名…1.自定义 表名属性 TableNameAttribute2.自定义 主键属性 PrimaryKeyAttribute3.自定义 列名属性 TableColumnAttribute 4.数据表person对应的实体类person.cs5.获得person.cs类型实体 对应的表名及字段名 下面的属性代码文件 都直接建立在App_Code下 以方便使用 1.自定义 表名属性 TableNameAttribute------------------------------------ using System;/**//// summary/// TableNameAttribute 的摘要说明/// /summary[AttributeUsage( AttributeTargets.Class, AllowMultiplefalse, Inheritedtrue )]public sealed class TableNameAttribute : Attribute{    private string name;    private string schema;    //private CacheStrategy cacheStrategy  GentleSettings.DefaultCacheStrategy;    /**//// summary    /// The constructor for the TableName attribute.    /// /summary    /// param namenameThe name of the database table used to store instances of this class./param    public TableNameAttribute( string name )    {        this.name  name;    }    /**//// summary    /// The constructor for the TableName attribute.    /// /summary    /// param namenameThe name of the database table used to store instances of this class./param    /// param namestrategyThe cache stratgey to use for instances of this type. see     /// crefCacheStrategy/ for a list of available options./param    //public TableNameAttribute( string name, CacheStrategy strategy )    //{    //    this.name  name;    //    this.cacheStrategy  strategy;    //}    /**//// summary    /// The name of the database table used to store instances of this class.    /// /summary    public string Name    {        get { return name; }    }    /**//// summary    /// The optional schema name with which to prefix the table name in queries.    /// This value overrides the default schema definition (if present) in the    /// configuration file. Note: this property is currently unused.     /// /summary    public string Schema    {        get { return schema; }        set { schema  value; }    }    /**////// summary    ///// The cache behavior for objects of this type. see crefCacheStrategy/     ///// for a list of available options.    ///// /summary    //public CacheStrategy CacheStrategy    //{    //    get { return cacheStrategy; }    //    set { cacheStrategy  value; }    //}} 2.自定义 主键属性 PrimaryKeyAttribute ------------------------------------ using System;/**//// summary/// PrimaryKeyAttribute 的摘要说明/// /summary[AttributeUsage(AttributeTargets.Property | AttributeTargets.Field, AllowMultiple  true, Inherited  true)]public sealed class PrimaryKeyAttribute : Attribute{    private bool autoGenerated  false;    /**//// summary    /// Set this property to true for primary keys that are automatically assigned    /// by the database on insert (identity columns in SQL server terminology).     /// /summary    public bool AutoGenerated    {        get { return autoGenerated; }        set { autoGenerated  value; }    }} 3.自定义 列名属性 TableColumnAttribute -------------------------------------- using System;using System.Data;/**//// summary/// TableColumnAttribute 的摘要说明/// /summary[AttributeUsage( AttributeTargets.Property | AttributeTargets.Field, AllowMultiplefalse, Inheritedtrue )]public class TableColumnAttribute : Attribute{    private string name;    private bool notNull;    private int size;    private bool hasDbType  false; // true when DbType property has been set    private long dbType;    private object nullValue  null;    private bool handleEnumAsString  false;    private bool isReadOnly  false;    private bool isUpdateAfterWrite  false;    /**//// summary    /// Constructor for table columns that are named after their property counterpart    /// and whose value cannot be null.    /// /summary    public TableColumnAttribute()        : this(null, true)    {    }    /**//// summary    /// Constructor for table columns that are named after their property counterpart.    /// /summary    /// param namenotNullA boolean telling whether null values are allowed in the database/param    public TableColumnAttribute(bool notNull)        : this(null, notNull)    {    }    /**//// summary    /// Constructor for table columns whose value cannot be null.    /// /summary    /// param namenameThe name of the database column/param    public TableColumnAttribute(string name)        : this(name, true)    {    }    /**//// summary    /// Constructor for table columns.    /// /summary    /// param namenameThe name of the database column/param    /// param namenotNullA boolean telling whether null values are allowed in the database/param    public TableColumnAttribute(string name, bool notNull)    {        this.name  name;        this.notNull  notNull;    }    /**//// summary    /// The name of the database column for storing the property decorated with this attribute.    /// /summary    public string Name    {        get { return name; }    }    /**//// summary    /// This property (defaults to true) can be used to specify whether NULL values are    /// allowed in the database. This allows the framework to fail early if a constraint    /// is violated.    /// /summary    public bool NotNull    {        get { return notNull; }        set { notNull  value; }    }    /**//// summary    /// The database type of the field in the database. Beware that the DbType enumeration    /// values are NOT the ones used by the individual providers. Gentle does NOT convert    /// the DbType to a best match for the provider. It is therefore recommended that     /// you use the DatabaseType below until a better type definition system is available.    /// /summary    [Obsolete(Please use DatabaseType instead.)]    public DbType DbType    {        get { return (DbType)dbType; }        set        {            hasDbType  true;            dbType  (long)value;        }    }    /**//// summary    /// The database type of the field in the database. Convert the actual database type    /// enumeration to a long by casting it in the declaration.    /// /summary    public long DatabaseType    {        get { return dbType; }        set        {            hasDbType  true;            dbType  value;        }    }    /**//// summary    /// The size or length of the field in the database. String properties will be clipped    /// to fit.    /// This feature will obsoleted once Gentle is capable of extracting type and size     /// information directly from the database. If specified, the values must match    /// those extracted from the database (when implemented).    /// /summary    public int Size    {        get { return size; }        set { size  value; }    }    /**//// summary    /// This property indicates whether a DbType was specified. This construct is necessary    /// because the DbType enum has no value for undefined.    /// /summary    public bool HasDbType    {        get { return hasDbType; }    }    /**//// summary    /// Obsolete, use NullValue instead.    /// /summary    [Obsolete(Use NullValue instead.)]    public object MagicValue    {        get { return nullValue; }        set { nullValue  value; }    }    /**//// summary    /// This value of this property is used when a column is NotNull and the property value    /// is null.  If this is undefined the framework will throw an error for NotNull columns    /// whose values are null.    /// /summary    public object NullValue    {        get { return nullValue; }        set { nullValue  value; }    }    NullValue Helper Properties for VB.NET Users#region NullValue Helper Properties for VB.NET Users    /**//// summary    /// This property allows type-safe setting of the NullValue for VB users.    /// /summary    public int NullValue_int    {        set { NullValue  value; }    }    /**//// summary    /// This property allows type-safe setting of the NullValue for VB users.    /// /summary    public NullOption NullValue_opt    {        set { NullValue  value; }    }    #endregion    /**//// summary    /// This value indicates that the column should not be set on insert and update. It is    /// primarily useful for columns that are set internally by the database.    /// /summary    public bool IsReadOnly    {        get { return isReadOnly; }        set { isReadOnly  value; }    }    /**//// summary    /// This value indicates that the column must be read after each insert and update. It is    /// primarily useful for columns that are set internally by the database. Note that using    /// this feature (by setting this to true for any column) will significantly impact     /// performance for the worse, as for every update/insert another select will be     /// performed. Also, fields will be updated using reflection after select, which is also    /// quite slow (depending on the number of columns).    /// /summary    public bool IsUpdateAfterWrite    {        get { return isUpdateAfterWrite; }        set { isUpdateAfterWrite  value; }    }    /**//// summary    /// If member which has this attribute attached is enum then this property    /// indicates wheter framework saves it as string or as integer.    /// Default is false, ie enums are saved as integers    /// /summary    public bool HandleEnumAsString    {        get { return handleEnumAsString; }        set { handleEnumAsString  value; }    }}public enum NullOption{    /**//// summary    /// lt;typegt;.MinValue will be stored as NULL, and NULL will be read as lt;typegt;.MinValue.    /// /summary    MinValue,    /**//// summary    /// lt;typegt;.MaxValue will be stored as NULL, and NULL will be read as lt;typegt;.MaxValue.    /// /summary    MaxValue,    /**//// summary    /// 0 (or the equivalent for other numeric types) will be stored as NULL, and NULL will be read as 0.    /// /summary This value can only be used with numeric types (such as decimal).    Zero,    /**//// summary    /// Guid.Empty will be stored as NULL, and NULL will be read as Guid.Empty. This value can only be    /// used with Guid fields.    /// /summary    EmptyGuid} 4.数据表person对应的实体类person.cs------------------------------------ using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;/**//// summary/// person 的摘要说明/// /summary[TableName(person)]public class person{    public person()    {    }    //[TableColumn(personID, NotNull  true), PrimaryKey]    protected int _personID;    //[TableColumn(personName, NotNull  true)]    protected string _personName  String.Empty;    [TableColumn(personID, NotNull  true), PrimaryKey]    public int PersonID    {        get { return _personID; }        set { _personID  value; }    }    [TableColumn(personName, NotNull  true)]    public string PersonName    {        get { return _personName; }        set { _personName  value; }    }} 5.获得person.cs类型实体 对应的表名及字段名------------------------------------------ protected void Button1_Click(object sender, EventArgs e){    person aPerson  new person();    aPerson.PersonID  22;    aPerson.PersonName  zhangsan;    Type aType  aPerson.GetType();    //类实体公开属性对应的列名属性    PropertyInfo[] aPropertyInfos  aType.GetProperties();    string strPublicProperty   ;    for (int i  0; i  aPropertyInfos.Length; i)    {        PropertyInfo aPropertyInfo  (PropertyInfo)aPropertyInfos[i];        strPublicProperty  i.ToString()   : 实体属性名   aPropertyInfo.Name;        strPublicProperty   对应值   aPropertyInfo.GetValue(aPerson, null).ToString()   ;        object[] attrs  aPropertyInfo.GetCustomAttributes(typeof(TableColumnAttribute), true);        for (int m  0; m  attrs.Length; m)        {            strPublicProperty   对应列名   ((TableColumnAttribute)attrs[m]).Name;        }    }    this.TextBox1.Text  strPublicProperty;    //FieldInfo[] aFieldInfos  aType.GetFields();    //string strPublicField   ;    //for (int j  0; j  aFieldInfos.Length; j)    //{    //    FieldInfo aFieldInfo  (FieldInfo)aFieldInfos[j];    //    strPublicField  j.ToString()   :   aFieldInfo.Name   ;    //}    //this.TextBox2.Text  strPublicField;        //类实体对应的表名属性    string strTablePKName   ;    object[] attrsAA  aType.GetCustomAttributes(typeof(TableNameAttribute), true);    for (int n  0; n  attrsAA.Length; n)    {        strTablePKName     ((TableNameAttribute)attrsAA[n]).Name;    }    //类实体对应的主键属性    MemberInfo[] aMemberInfos  aType.GetMembers(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance);    string strMemberInfo   ;    for (int k  0; k  aMemberInfos.Length; k)    {        MemberInfo aM  aMemberInfos[k];        object[] attrs  aM.GetCustomAttributes(typeof(PrimaryKeyAttribute), true);        for (int m  0; m  attrs.Length; m)        {            strTablePKName   主键   aM.Name;        }    }    this.TextBox2.Text  strTablePKName;   }
http://www.pierceye.com/news/90253/

相关文章:

  • 跨境电商自己做网站引流会宁县建设局网站
  • 对于学校网站建设的建议google推广公司哪家好
  • 国外做装饰画的网站公司logo设计图片欣赏
  • 宿州外贸网站建设公司工信部资质查询网站
  • 动漫做暧视频网站用手机制作动画的app
  • 网站备案 域名证书帝国cms响应式网站模板
  • 一个电信ip做网站卡不卡企业网站建设排名资讯
  • 网站建设论文的开题报告制作一个app软件需要多少时间
  • 我们做的网站是优化型结构做二手车网站需要什么
  • 湛江网站建设保定公司互联网信息服务平台官网
  • 做展柜平时在哪里网站推广网站色彩学
  • 网站建站 seo企业网站建设方案模板
  • 国外有哪些做deal的网站四川建筑职业学校官网教务网
  • 无锡网站制作工作室临夏州建设厅官方网站
  • 怎么建设淘宝联盟的网站150m网站空间
  • 淘宝联盟链接的网站怎么做的wordpress幻灯片教程视频教程
  • 网站上线稳定后工作wordpress 不同的文章
  • 网站制作一条龙淘宝详情页制作
  • 海南营销网站建设安徽省住房城乡建设厅网站
  • 单招网站开发基础知识厚街网站建设公司
  • 怎么建微信群如何完成seo优化
  • 顺义广州网站建设wordpress更改字体大小
  • 网站二级目录怎么做婚纱摄影类网站
  • 做国外销售都上什么网站制作图片视频
  • jsp网站开发教学视频教程网站做的比较好的
  • 网站上传页面手机网站与PC网站
  • 在线绘画网站推广链接打开
  • wordpress 企业站 模板做情书直接点网站
  • 在线解压rar网站永康市网站建设
  • 广州建站商城长链接转换成短链接