C# Generic Enum в качестве аргумента конструктораC#

Место общения программистов C#
Anonymous
C# Generic Enum в качестве аргумента конструктора

Сообщение Anonymous »

so: < /p>
Проект B Ссылки на проект A, проект A является основной библиотекой < /p>
Проект A имеет класс атрибутов с конструктором, который в настоящее время принимает массив строк (InprojectPermissionTypes): < /p>

Код: Выделить всё

public class Read : Attribute
{

public string[] ProjectPermissionTypes;
public enumPermissionType PermissionType;

public Read(enumPermissionType inPermissionType, params string[] inProjectPermissionTypes)
{
this.ProjectPermissionTypes = inProjectPermissionTypes;
this.PermissionType = inPermissionType;
}

}
< /code>
Проект B использует приведенный выше класс в качестве атрибута < /p>
[Attributes.Permissions.Project.Read(Attributes.Permissions.enumPermissionType.ALLOW, "P1", "P2")]
< /code>
Я хотел бы заменить часть «P1», «P2» на массив значений перечисления от EMUM, которая живет в проекте B - Проблема - как это сделать - как проект A не может иметь прямого знания о перечислении в проекте B, я не могу поместить enum в проекте A, поэтому я думаю, что, возможно, общий способ установить: < /p>

params string[] inProjectPermissionType
< /code>
Так что -то вроде: < /p>
params magicEnum inProjectPermissionType
, который примет любое перечисление, которое я могу разобрать в конструкторе?>

Подробнее здесь: https://stackoverflow.com/questions/649 ... r-argument

Вернуться в «C#»