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;
    		}
    	}
    

      

  • 相关阅读:
    1105 Spiral Matrix
    Spring Boot 单元测试
    第一个 Spring Boot 应用程序
    Spring Boot 优缺点
    Spring Boot 简介
    第一个 Spring 应用程序
    Spring 体系结构
    Spring 与 IoC
    Spring 的特点
    Spring 简介
  • 原文地址:https://www.cnblogs.com/x-poior/p/5388825.html
Copyright © 2011-2022 走看看