У меня есть Проект A, который будет использоваться в качестве ссылки в Проект B.условный редакторBrowsable by web.config AppSettings
Проект А имеет класс с методом, который должен быть либо видимым или нет в зависимости от состояния, указанного в проекте B. Скажем, метод будет виден, если в web.config appSettings проекта B появился ключ «DisplayMethod» со значением «true».
Это больше контроль версий. Я не хочу создавать отдельную dll для новой версии проекта A. Я бы хотел, чтобы одна dll могла поддерживать как старую, так и новую версию. Таким образом, разработчик Project B может легко переключать версию в web.config, перестраивать проект, и он хорош.
Ограничения
- У меня нет контроля над проектом B. Я могу только попросить разработчика Project B для простой модификации как модификации web.config.
- Я понятия не имею, какие проекты будут использовать Project A. Project A - проект с открытым исходным кодом и может использоваться кем-либо, возможно, в тысячах проектов.
Под "метод был бы виден" Я имею в виду ту же функциональность, как следующий код будет делать:
[EditorBrowsable(EditorBrowsableState.Never)]
public string SomeMethod(string s)
{
return "Hello " + s;
}
исследований до сих пор:
Я видел this question. Однако принятый ответ на него не работает для меня, поскольку условная константа может быть задана только в свойствах проекта того же проекта, где находится метод.
Условное пространство имен также будет работать, но там я сталкиваюсь с теми же проблемами.
Я понимаю это, и я действительно ожидал «невозможного» ответа. Просто, чтобы дать ему попробовать – Dmitry