zoukankan      html  css  js  c++  java
  • Attribute 特性

    //数据库表名与类名不一致时,用到的特性
    public class TableAttribute : Attribute
    {
    private string _TableName = null;
    
    public TableAttribute(string tableName)
    {
    this._TableName = tableName;
    }
    
    public string GetTableName()
    {
    return this._TableName;
    }
    
    }
    
    public static class Extend
    {
    /// <summary>
    /// 根据类型获取表名称
    /// </summary>
    /// <typeparam name="T"></typeparam>
    /// <param name="t"></param>
    /// <returns></returns>
    public static string GetTableName<T>(this T t) where T : new()
    {
    Type type = t.GetType();
    object[] oAttributeList = type.GetCustomAttributes(true);
    foreach (var item in oAttributeList)
    {
    if (item is TableAttribute)
    {
    TableAttribute attribute = item as TableAttribute;
    return attribute.GetTableName();
    }
    }
    
    return type.Name;
    }
    }
    
    static void Main(string[] args)
    {
    try
    {
    Console.WriteLine("欢迎来到.net高级班vip课程,今天的内容是特性和AOP");
    People people = new People();
    
    UserModel user = new UserModel();
    user.Id = 1;
    
    string name = user.GetTableName<UserModel>();
    
    string remark = UserState.Normal.GetRemark();
    
    BaseDAL.Save<UserModel>(user);
    
    
    #region AOP show
    Console.WriteLine("***********************");
    Decorator.Show();
    Console.WriteLine("***********************");
    Proxy.Show();
    Console.WriteLine("***********************");
    CastleProxy.Show();
    Console.WriteLine("***********************");
    UnityAOP.Show();
    #endregion
    }
    catch (Exception ex)
    {
    Console.WriteLine(ex.Message);
    }
    Console.Read();
    }
    明天你会感激你今天所做的努力。
  • 相关阅读:
    JAVA课后作业
    类中创建对象的个数
    JAVA动手动脑及课后思考
    JAVA课后作业
    java课后思考
    加法
    大道至简第一章伪代码
    解决得到网络流不支持查找的方案
    row_number() over(partition by 列名1 order by 列名2 desc)的使用
    SQL中的特殊符号
  • 原文地址:https://www.cnblogs.com/Torey/p/7140785.html
Copyright © 2011-2022 走看看