Атрибуты параметров в c # - PullRequest
       1

Атрибуты параметров в c #

5 голосов
/ 27 апреля 2010

Как мне сделать следующее с атрибутами c #. Ниже приведен фрагмент Java, который аннотирует параметры в конструкторе.

public class Factory {
    private final String name;
    private final String value;
    public Factory(@Inject("name") String name, @Inject("value") String value) {
        this.name = name;
        this.value = value;
    }
}

При просмотре аннотаций на c # не похоже, что я могу комментировать параметры. Это возможно?

Ответы [ 2 ]

13 голосов
/ 27 апреля 2010

Вы можете абсолютно приписать параметры:

public Factory([Inject("name")] String name, [Inject("value")] String value)

Конечно, атрибут должен быть объявлен как , разрешить , чтобы он был указан для параметров через AttributeUsageAttribute(AttributeTargets.Parameter).

См. OutAttribute и DefaultParameterValueAttribute в качестве примеров.

1 голос
/ 27 апреля 2010

Создайте класс атрибута с AttributeUsageAttribute и их, используйте Отражение для проверки параметров.

[System.AttributeUsage(System.AttributeTargets.All)]
class NewAttribute : System.Attribute { }

Доступ к атрибутам с отражением

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...