Как получить только созданные пользователем свойства, используя microsoft.cci Members? - PullRequest
0 голосов
/ 15 июля 2010

Я изучаю T4 и успешно опрашиваю свой пользовательский класс для его участника.

Что мне нужно, однако, это вывести только свойства, которые я создал, такие как Имя, Фамилия и Почтовый индекс.

Вот пример того, что яфактически получается, когда я использую:

foreach(Microsoft.Cci.Member member in class.Members)
{
    if( member.IsPublic )
    {
        Write( member.Name + ",\n");
    }
}

get_FirstName,

set_FirstName,

get_Surname,

set_Surname,

FirstName,

Фамилия,

.ctor

Кто-нибудь может посоветовать, если возможно просто получить доступ к фактическим свойствам и их типам?

Большое спасибо.

1 Ответ

0 голосов
/ 22 июля 2010

Вам нужно будет извлечь свойства из членов.Вы можете идентифицировать членов PropertyNode по их NodeType, который будет NodeType.Property.например:

foreach (PropertyNode property in type.Members
                .Where(m => m.NodeType == NodeType.Property)
                .Cast<PropertyNode>())
{
    //...
}
...