Для чего сгенерирован MyAssembly.XmlSerializers.dll?

Добавьте свою собственную функцию array_column, если версия PHP не поддерживает ее:

Ссылка:

123
задан Hemant 1 June 2009 в 11:18
поделиться

4 ответа

В реализации .NET XmlSerializer создает временную сборку для сериализации / десериализации ваших классов (из соображений производительности). Его можно либо сгенерировать «на лету» (но на каждое выполнение требуется время), либо предварительно сгенерировать во время компиляции и сохранить в этой сборке, о которой вы спрашиваете.

Вы можете изменить это поведение в параметрах проекта (вкладка Компиляция -> Дополнительные параметры компиляции -> Генерация сборок сериализации , Авто или на соответственно). Соответствующим элементом в файле проекта является GenerateSerializationAssemblies , например Auto .

98
ответ дан 24 November 2019 в 01:17
поделиться

Я думаю, что это JIT-компиляция XML-сериализаторов из соображений производительности.

Вы получаете то же самое с экземплярами RegEx, используя включенную опцию RegexOptions.Compiled.

Я не эксперт по .NET CLR, извините за отсутствие точных технических деталей.

6
ответ дан 24 November 2019 в 01:17
поделиться

*. XmlSerializers.dll генерируются с помощью Sgen.exe [XML Serializer Generator Tool]

См. Sgen.exe в MSDN

Обычно Sgen.exe используется в событиях Post Build проектов. Посмотрите, есть ли в вашем проекте событие после сборки, которое генерирует *. XmlSerializers.dll

5
ответ дан 24 November 2019 в 01:17
поделиться

FYI. Точные шаги, чтобы остановить автоматическую генерацию XmlSerializers.dll:

  1. В VS щелкните правой кнопкой мыши файл проекта и выберите «Свойства»
  2. Щелкните вкладку «Сборка»
  3. Измените параметр «Создать сериализацию» сборка "выпадающий из" Авто "в" Выкл "
  4. Перестройте, и он исчезнет
54
ответ дан 24 November 2019 в 01:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: