using System.Collections.Generic;
using System.Data.SqlClient;
using System.Data;
using System;

namespace NPetshop.Domain
{
 /***************************************************************************
 * 
 *       功能:     product实体类
 *       作者:     李伟伟
 *       日期:     2011-5-28
 *       描述:     11111111111111111111111111
 * *************************************************************************/
 [Serializable]
    public  class productEntity 
    { 
  #region 属性
  /// <summary>
        /// 获取或设置Id字段的值 自增列 System.Int32
  /// 数据库类型长度:int 大小:4 精度:10
        /// </summary>
        [Column("Id")]
        public System.Int32 Id{get; set;}
  
  /// <summary>
        /// 获取或设置Name字段的值  System.String
  /// 数据库类型长度:varchar 大小:50 
        /// </summary>
        [Column("Name")]
        public System.String Name{get; set;}
  
  /// <summary>
        /// 获取或设置UserId字段的值  System.Int32
  /// 数据库类型长度:int 大小:4 精度:10
        /// </summary>
        [Column("UserId")]
        public System.Int32 UserId{get; set;}
  
  #endregion
  
  #region 构造函数
  
  /// <summary>
     /// 构造函数
    /// </summary>
  /// <param name="name">Name</param>
  /// <param name="userId">UserId</param>
        public productEntity(System.String name,System.Int32 userId)
        {
   this.Name = name;
   this.UserId = userId;
  }
  
  /// <summary>
     /// 构造函数
    /// </summary>
  public productEntity()
        {
   this.Name = null;
   this.UserId = 0;
  }
        #endregion
    }
}

//特性

using System;
using System.Collections.Generic;
using System.Text;
using System.Data;

namespace NPetshop.Domain
{
    /// <summary>
    /// 将类的属性与数据库表中的列相关联。
    /// </summary>
    [AttributeUsage(AttributeTargets.Property)]
    public sealed class ColumnAttribute : System.Attribute
    {
        /// <summary>
        /// 获取或设置列的名称。
        /// </summary>
        public string ColumnName { get; private set; }

/// <summary>
        /// 获取或设置列的标题。
        /// </summary>
        public string ColumnCaption { get; private set; }

/// <summary>
        /// 获取或设置列的类型。
        /// </summary>
        public SqlDbType ColumnType { get; private set; }

/// <summary>
        /// 初始化 MagicStar.Entity.ColumnAttribute 类的一个新实例。
        /// </summary>
        /// <param name="columnCaption">表或视图的标题。</param>
        /// <param name="columnName">表或视图的名称。</param>
        /// <param name="columnType">类型。</param>
        public ColumnAttribute(string columnName, string columnCaption, SqlDbType columnType)
        {
            ColumnName = columnName;
            ColumnCaption = columnCaption;
            ColumnType = columnType;
        }

/// <summary>
        /// 初始化 MagicStar.Entity.ColumnAttribute 类的一个新实例。
        /// </summary>
        /// <param name="columnCaption">表或视图的标题。</param>
        /// <param name="columnName">表或视图的名称。</param>
        /// <param name="columnType">类型。</param>
        public ColumnAttribute(string columnName)
        {
            ColumnName = columnName;
        }
    }
}

///实现

productEntity _roductEntity = new productEntity();
            _roductEntity.Id = 1;
            _roductEntity.Name = "2";

Type type = _roductEntity.GetType();
            PropertyInfo[] properties = type.GetProperties();

foreach (PropertyInfo property in properties)
            {
                Response.Write(type.GetProperty(property.Name).GetValue(_roductEntity, null));
                Response.Write(property.Name + "");
            }

通过特性动态获取属性及值相关推荐

  1. struts2原理分析之反射技术动态获取属性

    反射技术动态获取属性 知道struts2的流程的乡亲们都知道.struts2采用了动态获取属性的方法, 将表单里的数据传给了Action. 例如; 在struts2里有如下配置文件 <actio ...

  2. 跨域 · 后台设置:头部header(服务器端添加属性、属性值,浏览器端获取属性及其值) - 数据篇

    跨域 · 后台设置:头部header自定义属性 (服务器端添加属性.属性值,浏览器端获取属性及其值) headers 服务端配置 # For more information on configura ...

  3. Spring注解@Value获取属性文件值且解决在controller无法获取到值的问题

    一.说到@Value注解,用过的应该都知道,这是Spring3的一个注解,通过@value注解的方式获取properties文件中的配置值,大大简化了我们读取配置文件的代码 首先必须要配置proper ...

  4. Android 主题切换(theme),语种切换,动态获取自定义属性(attr)值

    Google提供的更换主题包方法参考: https://source.android.google.cn/devices/architecture/rros?hl=zh-cn https://www. ...

  5. PropertyGrid 绑定动态的属性与值的集合

    建立下面3个类: XProp XPropDescriptor XProps 建立Class XProp XProp 就是用户将具体使用的属性.PropertyGrid 很炫的一点就是属性的定制可以有很 ...

  6. 使用C#中的反射从字符串获取属性值

    我正在尝试在代码中使用Reflection 1示例实现数据转换 . GetSourceValue函数具有比较各种类型的开关,但是我想删除这些类型和属性,并让GetSourceValue仅使用单个字符串 ...

  7. Java中怎样使用反射根据属性名获取和设置属性的值

    场景 在某管理系统中需要对一月中的每天进行设置某个状态 对应的实体类的属性为 分别为d1 d2 一直到第31号.前端传递到后台的是d1 d2 d3等实体类对应的属性和要设置的状态的字段. 怎样将这些属 ...

  8. 通过反射获取属性以及属性的值

    已经通过反射获取到 Class 对象了,接下来开始获取属性 属性的英文是 Field,所以获取属性的集合方法就是 getFields(): 这里有一个知识点: getField 和 getDeclar ...

  9. vue设置img大小的属性_Vue.js自定义标签属性并获取属性,及绑定img的src属性的坑...

    一.定义属性: 一般定义属性都是为了动态的去获取属性的值,或者动态的设置属性的值,如果想仅仅是设置一个普通的属性,直接在便签上设置属性即可,就像使用html的title.name等属性一样,如 H1标 ...

最新文章

  1. Introduction to Automata Theory, Languages, and Computation部分习题解答
  2. python通过hive transform处理数据
  3. 一步一步学Ruby(二十一):文件操作2
  4. 用画小狗的方法来解释Java中的值传递
  5. android定位会出现的问题,android – 使用GPS_PROVIDER进行定位时出现问题
  6. 想象力比知识更重要——专访首位吴文俊人工智能最高成就奖得主陆汝钤
  7. localStorage、sessionStorage本地存取Object 对象 - 代码篇
  8. linux c语言 文件拷贝,怎么在linux下用c编程实现文件的复制
  9. AJAX设置光标离开自动提交,Ajax自动提交和刷新页面
  10. 用户登入验证码代码示例
  11. 安卓开发-开发环境搭建
  12. 算法——排序——归并排序图解动画
  13. php框架laravel下载,Laravel框架下载,安装及路由操作图文详解
  14. golang 获取本周 上周的时间
  15. 猫抓 浏览器插件安装教程,适用Chrome浏览器和Edge浏览器
  16. 【教学类-07-04】20221113《破译电话号码-加减法版+自制(PDF打印)》(大班主题《我要上小学》)
  17. 集运转运系统源码,快递物流一件代付系统源码
  18. 机器学习数据集!CV、NLP 一应俱全
  19. python3 urllib 内存泄露_【专家专栏】张昊 | 从urllib2的内存泄露看python的GC
  20. SEO上下线营销思维:二者兼备实现“落地”

热门文章

  1. 良好的编码风格 java_关于java:编码风格是否遵循良好做法
  2. 矩形键盘 linux,基于ARM的矩阵键盘设计及其linux驱动实现
  3. ArcGIS API For Javascript :如何动态生成 token 加载权限分配的地图服务?
  4. Helper Devise: could not find the `Warden::Proxy` instance on request environment
  5. Apache本地环境部署
  6. Activity-数据状态的保存
  7. 由Net Applications的浏览器的市场份额想开的
  8. Solr单机安装Version5.5.2
  9. Ranger-Sqoop2插件安装
  10. 浏览器弹窗怎么设置显示url_谷歌浏览器Chrome76版本地址栏不显示HTTPS和WWW怎么办?...