Сборка XML-сериализации для не-веб-проектов
Я пытаюсь решить хорошо известную проблему автоматически генерируемых сборок сериализации в VS 2010, как VB.NET, так и C#. Параметр "Создать сборки сериализации" в настройках проекта ничего не делает для не веб-проектов (см. http://blog.devstone.com/aaron/archive/2008/02/07/2778.aspx и др.). Таким образом, вызовы к сериализаторам генерируют файловые исключения ввода / вывода, которые очень неудачны, и для которых нет никакого лечения. Предложенный выше метод не работает с VS2010, а SGEN по-прежнему работает с включенным /proxytypes.
1 ответ
Решение:
Установите для параметра "Создать сборки сериализации" в настройках проекта значение "ВКЛ", как обычно, затем добавьте этот XML-файл в файл.proj:
<PropertyGroup>
<SGenUseProxyTypes>false</SGenUseProxyTypes>
<SGenPlatformTarget>$(Platform)</SGenPlatformTarget>
</PropertyGroup>
Первая строка отключает переключатель зло / прокситипов. Вторая строка требуется, если выбранная платформа отличается от AnyCPU. Если он опущен, то сборка сериализации создается с использованием AnyCPU и не сможет привязаться к основной сборке, которая может быть x86 или x64.