zoukankan      html  css  js  c++  java
  • C#

    用反射控制的,不过获取属性名称的方法,用方法形式获取的,不知道消耗大不大

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using Qxun.Framework.Utility;
    using System.Linq.Expressions;
    
    namespace ConsoleApplication1
    {
        class Program
        {
            static void Main(string[] args)
            {
                Console.WriteLine("int类型=》" + typeof(int).Name);
                Console.WriteLine(GetPropertyName<GetProperty>(u=>u.Name1));
                //这个是拿所有名称的,不是那么灵活
                string name = typeof(GetProperty).GetProperties(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance)[1].Name;
                Console.WriteLine(name);
                Console.ReadKey();
            }
    
            public static string GetPropertyName<T>(Expression<Func<T,string>> expr)
            {
                var name = ((MemberExpression)expr.Body).Member.Name;
                return name;
            }
    
        }
    
        public class GetProperty{
            public string Name1 { get; set; }
            public string Name2 { get; set; }
            public string Name3 { get; set; }
        }
    
    }
    

  • 相关阅读:
    设计模式——设计模式之禅day2
    和阿文一起学H5——音乐素材
    mysql数据库问题
    vue-cli脚手架工具
    webpack总结
    sql和nosql区别
    MongoDB基本命令
    >nbsp修改
    字典
    列表
  • 原文地址:https://www.cnblogs.com/danlis/p/6678831.html
Copyright © 2011-2022 走看看