Имам проблем с разделителната способност на асемблиране на машина на краен потребител и смятам, че е свързан с използването на Portable Class Libraries....
Имам приложение .NET 4.0, което първоначално беше написано във Visual Studio 2010. Наскоро надстроихме до Visual Studio 2012 и създадохме няколко проекта, които са преносими библиотеки от класове. Не вярвам, че имаме нужда от тези функции сега, но също така създаваме приложение за Windows 8 Store, което може да се възползва от тези библиотеки.
Когато компилирам моя проект, какво точно прави функцията за преносима библиотека? Очаквам, че ми позволява да го стартирам на различни рамки без модификация или прекомпилиране.
Когато гледам библиотеката в reflector dotPeek, тя показва атрибута Platform като:
.NETPortable,Версия=v4.0,Профил=Профил5
И референциите изглеждат 2.0-ish:
mscorlib, версия=2.0.5.0
Система, версия=2.0.5.0
System.Runtime.Serialization, версия=2.0.5.0
Когато стартирам приложението на машината на този краен потребител, виждам грешка в регистрационния файл:
Не може да се зареди файл или сборка, „System.Core, Version=2.0.5.0...“
Googleing System.Core 2.0.5.0 изглежда се отнася до SilverLight -- което изглежда е една от целевите рамки.
Тази машина няма инсталирано Visual Studio, но има .NET 4.0 (актуализация 4.0.3)
Има ли нещо, което трябва да правя по различен начин, за да компилирам, нещо, което трябва да проуча в моите зависимости или нещо, което трябва да търся да инсталирам на машината на крайния потребител? За какво се отнася 2.0.5.0?