admin管理员组文章数量:1130349
反射配合特性简单案例,附带一些阿猫阿狗
反射类:
public class ColumnInfoAttribute : Attribute{public ColumnInfoAttribute(string name){this.Name = name;}public string Name { get; set; }public bool Visible { get; set; } = true;public int Number { get; set; }}
实体类:
public class STORM {[ColumnInfo("号码")]public int ID { get; set; }[ColumnInfo("名称")]public string NAME { get; set; } }
控制台主函数:
internal class Program{static void Main(string[] args){List<STORM> SList = new List<STORM>(){new STORM() { ID = 1, NAME = "AA" },new STORM() { ID = 2, NAME = "AAA" }};var list= SList.Select(p => p.ID);var list22=list.Select(p => $"'{p}'");//$"[{ p.Name}]=@{p.Name}"var list22222 = SList.Select(p => $"[{p.ID}]=@{p.ID}");Object _object=new STORM();STORM STORM = (STORM)_object;var A = typeof(STORM).GetProperty("ID");var W = A.GetCustomAttributes(typeof(ColumnInfoAttribute), false);if (W.Count() > 0){string aaaa = ((ColumnInfoAttribute)W[0])?.Name.ToString();bool lll = ((ColumnInfoAttribute)W[0]) != null ? ((ColumnInfoAttribute)W[0]).Visible : true;}Console.WriteLine($"调用方法(主线程)结束 ThreadId:{Thread.CurrentThread.ManagedThreadId}");Console.ReadLine();}private static async void CODEUP(string code){Console.WriteLine($"被调用方法开始 ThreadId:{Thread.CurrentThread.ManagedThreadId}");await Task.Delay(2500);//直接出去Console.WriteLine($"被调用方法结束 ThreadId:{Thread.CurrentThread.ManagedThreadId}");}}
反射配合特性简单案例,附带一些阿猫阿狗
反射类:
public class ColumnInfoAttribute : Attribute{public ColumnInfoAttribute(string name){this.Name = name;}public string Name { get; set; }public bool Visible { get; set; } = true;public int Number { get; set; }}
实体类:
public class STORM {[ColumnInfo("号码")]public int ID { get; set; }[ColumnInfo("名称")]public string NAME { get; set; } }
控制台主函数:
internal class Program{static void Main(string[] args){List<STORM> SList = new List<STORM>(){new STORM() { ID = 1, NAME = "AA" },new STORM() { ID = 2, NAME = "AAA" }};var list= SList.Select(p => p.ID);var list22=list.Select(p => $"'{p}'");//$"[{ p.Name}]=@{p.Name}"var list22222 = SList.Select(p => $"[{p.ID}]=@{p.ID}");Object _object=new STORM();STORM STORM = (STORM)_object;var A = typeof(STORM).GetProperty("ID");var W = A.GetCustomAttributes(typeof(ColumnInfoAttribute), false);if (W.Count() > 0){string aaaa = ((ColumnInfoAttribute)W[0])?.Name.ToString();bool lll = ((ColumnInfoAttribute)W[0]) != null ? ((ColumnInfoAttribute)W[0]).Visible : true;}Console.WriteLine($"调用方法(主线程)结束 ThreadId:{Thread.CurrentThread.ManagedThreadId}");Console.ReadLine();}private static async void CODEUP(string code){Console.WriteLine($"被调用方法开始 ThreadId:{Thread.CurrentThread.ManagedThreadId}");await Task.Delay(2500);//直接出去Console.WriteLine($"被调用方法结束 ThreadId:{Thread.CurrentThread.ManagedThreadId}");}}
本文标签: 反射配合特性简单案例附带一些阿猫阿狗
版权声明:本文标题:反射配合特性简单案例,附带一些阿猫阿狗 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://it.en369.cn/IT/1694667907a254831.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。


发表评论