【问题标题】:How to get object key names in c#? [closed]如何在 C# 中获取对象键名? [关闭]
【发布时间】:2020-09-04 16:50:21
【问题描述】:

我试图从 C# 中的对象获取对象键。怎么做? 例如:对象 Test 具有名为 Ticket 和 Hash 的键。如何获得?

internal class Test
    {
        public string Ticket { get; internal set; } = "TICKECIOR";
        public object Hash {get; internal set; } = null;
    }

我希望它输出 Ticket 和 hash。它需要与其他对象兼容。

我尝试这样使用它:

List<string> l = new List<string>();
var obj = new Test {Ticket = "test val"};
// I need to get the keys name and add them to list.
l.Add("key name");

【问题讨论】:

  • C# 中的属性名称与 JavaScript 中的属性名称不同。虽然您可以使用反射 API 来获取名称,但通常最好在某些罕见的情况下这样做。您能否编辑您的问题以包含您的用例和如何使用 Test 对象的示例代码?
  • 这能回答你的问题吗? Get properties and values from unknown object
  • 您的编辑并没有真正回答 为什么 您尝试这样做的问题。为什么需要一个包含属性名称的字符串列表?
  • 如果您需要键值对,请使用允许通过键快速访问的字典。

标签: c#


【解决方案1】:

您可以执行以下操作

typeof(Test).GetProperties().Select(x => x.Name).ToList();

【讨论】:

    猜你喜欢
    • 2014-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-15
    相关资源
    最近更新 更多