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

时间:2014-10-28 15:08:43

标签: c# enterprise-architect

使用Enterprise Architect(EA)的加载项我需要获得Test在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
        }

// - 输出

//标准

//回归

//加载

// CustomType1

// CustomType2

1 个答案:

答案 0 :(得分:3)

这里没有反思。 这些值存储在EA数据库中。 &#34;适当&#34;查询API的方法是使用Repository.GetReferencType(),如下所示:

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")