Проект 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
Мобильная версия