为了账号安全,请及时绑定邮箱和手机立即绑定

通过属性列表作为参数

通过属性列表作为参数

C#
蝴蝶刀刀 2021-10-23 17:08:55
希望通过一个类的属性列表,然后为每个传递的属性读取自定义属性:class Foo {    [FooBar(Name="Prop1")]    public string Prop1 { get; set; }    [FooBar(Name="Prop2")]    public int Prop2 { get; set; }    [FooBar(Name="Prop3")]    public bool Prop3 { get; set; }}// unsure of the props parameter type herepublic List<string> GetAttr(Expression<List<Func<Foo, object>>> props){    foreach(var prop in props)    {        // get FooBar attributes name value of the properties passed in    }}然后按照以下方式引用:GetAttr(bar => { bar.Prop1, bar.Prop2 });这将返回:"Prop1", "Prop2"我设法通过将参数定义为 params Expression>> 使其工作,但这最终非常冗长,因为每次都需要指定条形引用:GetAttr(bar => bar.Prop1, bar => bar.Prop2);虽然这有效,但它比我试图替换的系统更冗长。目的是能够指定列表中返回的属性编辑:在示例代码中添加了另一个属性。
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 122 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信