• 一个Linq表达式的扩展函数帮助类


    /// <summary>
    	/// Linq表达式的扩展函数
    	/// </summary>
    	public static class ExpressionExtensions {
    		/// <summary>
    		/// 获取成员表达式中的成员信息
    		/// </summary>
    		/// <param name="expression"></param>
    		/// <returns></returns>
    		public static MemberInfo GetMemberInfo(this LambdaExpression expression) {
    			var memberExpression = expression.Body as MemberExpression;
    			if (memberExpression == null) {
    				throw new ArgumentException("GetMemberAttribute require body of expression is MemberExpression");
    			}
    			return memberExpression.Member;
    		}
    
    		/// <summary>
    		/// 获取成员表达式中成员带的属性对象
    		/// </summary>
    		/// <typeparam name="TAttribute"></typeparam>
    		/// <param name="expression"></param>
    		/// <returns></returns>
    		public static TAttribute GetMemberAttribute<TAttribute>(this LambdaExpression expression)
    			where TAttribute : Attribute {
    			return expression.GetMemberInfo().GetCustomAttributes(
    				typeof(TAttribute), true).FirstOrDefault() as TAttribute;
    		}
    	}
    

      

  • 相关阅读:
    [JZOJ 5788] 餐馆
    [JZOJ 5778] 没有硝烟的战争
    problems_scala
    好迷茫,好迷茫啊
    公布下我的数据库操作层
    关于数据库大并发量(未完成)
    关于http协议头
    管理心得体会
    数据库表分区
    公共的Json操作类
  • 原文地址:https://www.cnblogs.com/x-poior/p/5388825.html
Copyright © 2020-2023  润新知