zoukankan      html  css  js  c++  java
  • 一个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;
    		}
    	}
    

      

  • 相关阅读:
    匿名函数
    Python基础练习题5
    for循环实现一个注册小案例
    Python基础练习题4
    Python集合
    Python基础练习题3
    Python 元组和字典
    Python PEP8规范与python之禅
    Python基础练习题2
    常见的排序之冒泡排序
  • 原文地址:https://www.cnblogs.com/x-poior/p/5388825.html
Copyright © 2011-2022 走看看