У меня есть библиотека классов, которой я делюсь между .Net Framework и Silverlight, используя два связанных проекта и метод связанных файлов.
Я хотел бы преобразовать это в одну Portable Class Library, но у меня есть один бит кода, который отличается между этими двумя. В настоящее время я использую условные операторы компилятора для разделения реализаций этого одного файла.
#if SILVERLIGHT
...
#else
...
#endif
Будет ли это соблюдаться в PCL?
Кроме того, часть кода, которая НЕ является Silverlight, ссылается на стороннюю обычную библиотеку классов .Net. PCL все еще компилируется, но я не могу использовать его в Silverlight из-за этой ссылки. Есть ли способ сказать PCL, чтобы он включался только для использования .Net?