如何在c#接口中获取属性的类型

本文关键字:获取 属性 类型 接口 | 更新日期: 2023-09-27 18:28:04

使用企业架构师(EA)的外接程序,我需要获得EA中测试可以具有的所有不同类型。

我的意思是,EA命名空间中的Test类继承自IDualTest接口,该接口具有名为"Type"的字符串属性的get/set方法。作为一个标准EA有3种不同的类型(标准、回归、加载),但也可以添加自己的类型。我需要得到所有这些类型。

我相信这是可能的反思,但这不是我最强大的网站,所以我真的可以在这里得到一些帮助。如果需要更多信息,请发表评论。

编辑:

我有以下代码:

List<string> typeList = new List<string>();
            foreach (string type in Test.Types)
            {
                typeList.Add(type);
            }

上面的代码不可编辑,但我希望它能说明我的需求。

 foreach (Test t in elm.Tests)
        {
            string type = t.Type; //It is this type that can be the standards from EA and your own added types
        }

//-输出

//标准

//回归

//加载

//自定义类型1

//自定义类型2

如何在c#接口中获取属性的类型

这里没有反射的用处。这些值存储在EA数据库中。查询API的"正确"方法是使用Repository.GetReferenceType(),如下所示:

EA.Reference testTypes = Repository.GetReferenceList("Test");
for (short i = 0; i < testTypes.Count; i++)
{
    string testType = testTypes.GetAt(i);
}

如果您需要更多信息,那么只有您可以直接查询数据库的名称:Repository.SQLQuery("select * from t_testtypes")