Предположим, у меня уже есть проект по сборке .NET 3.5. Теперь я хочу построить эту сборку для Silverlight и, кроме того, сохранить ее версию Silverlight с минимальными усилиями далее.
Что неприемлемо:
- Создание отдельного проекта для сборки Silverlight
Что приемлемо:
- Добавление пользовательских директив, позволяющих мне настроить либо Silverlight, либо .NET в зависимости от того, например. Свойства MSBuild.
- Добавление специальных конфигураций сборки для Silverlight
- Добавление разделов #ifdef Silverlight/#endif в исходный код.
- Как правило, любая другая модификация .csproj/.cs.
Итак, в основном, я хотел бы поддерживать один проект, но целевые две структуры. Я не хочу поддерживать два отдельных проекта, потому что это может привести к ошибкам, например, забыть о включении нового файла. Если есть много проектов и большая команда, это действительно важно, чтобы исключить такие ошибки.
Если это совершенно невозможно, любое решение, обеспечивающее аналогичные преимущества, приемлемо.