• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >ASP.NET > .net使用自定义类属性实例

.net使用自定义类属性实例

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了vb.net编程实例教程,.net项目开发实例,vb.net数据库编程实例,.net三层架构实例,.net项目实例等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

一般来说,在.net中可以使用Type.GetCustomAttributes获取类上的自定义属性,可以使用PropertyInfo.GetCustomAttributes获取属性信息上的自定义属性。
 
下面以定义一个简单数据库表的映射实体类来说明相关的使用方法,基于自定义类属性和自定义类中的属性的自定义属性,可以方便的进行类标记和类中属性的标记
 
创建一个类的自定义属性,用于标识数据库中的表名称,需要继承自Attribute类:

public sealed class TableAttribute : Attribute
{
        private readonly string _TableName = "";
        public TableAttribute(string tableName)
        {
            this._TableName = tableName;
        }
        public string TableName
        {
            get { return this._TableName; }
        }
}</div>

创建一个属性的自定义属性,用于标识数据库表中字段的名称,需要继承自Attribute类:

public class FieldAttribute : Attribute
{
        private readonly string _FieldName = "";    ///数据库的字段名称
        private System.Data.DbType _Type = System.Data.DbType.String;   ///数据库的字段类型
 
        public FieldAttribute(string fieldName)
       {
              this._FieldName=fieldName;
       }
 
        public FieldAttribute(string fieldName,System.Data.DbType type)
       {
              this._FieldName=fieldName;
              this._Type=type;
       }
 
       public string FieldName
        {
            get { return this._FieldName; }
        }
 
        public System.Data.DbType Type
        {
             get{return this._Type;}
        }
}</div>
 
创建一个数据实体基类:

{
        public BaseEntity()
        {
        }
 
         /// <summary>
        /// 获取表名称
        /// </summary>
        /// <returns></returns>
        public string GetTableName()
        {
            Type type = this.GetType();
            object[] objs = type.GetCustomAttributes(typeof(TableAttribute), true);
            if (objs.Length <= 0)
            {
                throw new Exception("实体类没有标识TableAttribute属性");
            }
            else
            {
                object obj = objs[0];
                TableAttribute ta = (TableAttribute)obj;
                return ta.TableName;                            //获取表名称
            }
        }
        /// <summary>
        /// 获取数据实体类上的FieldAttribute
        /// </summary>
        /// <param name="propertyName"></param>
        /// <returns></returns>
        public FieldAttribute GetFieldAttribute(string propertyName)
        {
            PropertyInfo field = this.GetType().GetProperty(propertyName);
            if (field == null)
            {
                throw new Exception("属性名" + propertyName + "不存在");
            }
            object[] objs = field.GetCustomAttributes(typeof(FieldAttribute), true);
            if (objs.Length <= 0)
            {
                throw new Exception("类体属性名" + propertyName + "没有标识FieldAttribute属性");
            }
            else
            {
                object obj = objs[0];
         &

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • .net使用自定义类属性实例
  • .NET操作Excel实例分享
  • .net实现微信公众账号接口开发实例代码
  • NET索引器使用方法实例代码
  • .NET实现热插拔功能(动态替换功用)方案实例
  • .NET 纯分页代码实例
  • VB.NET拷贝整个目录下所有子目录及文件的实例代码
  • .net搜索查询并实现分页实例
  • .net中下载文件的实例代码
  • .NET实现可交互的WINDOWS服务的实例代码

相关文章

  • 2017-05-11c#将Excel数据导入到数据库的实现代码
  • 2017-05-11获取创建Membership的数据库创建脚本
  • 2017-05-11asp.net 图片的读写入库实现代码
  • 2017-05-11asp.net 处理F5刷新页面重复提交页面的一个思路
  • 2017-05-11Asp.net中的数据绑定Eval和Bind应用示例
  • 2017-05-11ASP.NET MVC 文件上传教程(一)
  • 2017-05-11详解Asp.Net MVC——控制器与动作(Controller And Action)
  • 2017-05-11C#中的委托和事件学习(续)
  • 2017-05-11解读ASP.NET 5 & MVC6系列教程(4):核心技术与环境配置
  • 2017-05-11XML文件修改节点属性值(多种方法)

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 用Fine Uploader+ASP.NET MVC实现ajax文件上传[代码示例]
    • GridView控件如何显示序号
    • 在ASP.NET 2.0中操作数据之六十八:为DataTable添加额外的列
    • .NET发送邮件的实现方法示例
    • asp.net实现的MVC跨数据库多表联合动态条件查询功能示例
    • asp.net程序在调式和发布之间图片路径问题的解决方法
    • ASP.NET中实现获取调用方法名
    • asp.net中的窗体身份验证(最简单篇)
    • .Net Core实现图片文件上传下载功能
    • asp.net 获取机器硬件信息(cpu频率、磁盘可用空间、内存容量等)

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有