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

      

  • 相关阅读:
    adb 常用命令及操作
    服务器被黑检查命令
    linux总结
    mysql数据库常用操作
    Python字符串所有操作函数
    Python提示信息表示内容
    Linux基础命令wget(如何联网下载?)
    Linux基础命令sz
    Linux基础命令rz
    Linux基础命令find
  • 原文地址:https://www.cnblogs.com/x-poior/p/5388825.html
Copyright © 2011-2022 走看看