Оқиға
Интеллектуалды бағдарламаларды құру
Mar 17, 11 PM - Mar 21, 11 PM
Нақты пайдалану жағдайлары негізінде масштабты ИСК шешімдерін құру үшін стипендиаттармен және сарапшылармен кездесу сериясына қосылыңыз.
Қазір тіркелуБұл браузерге бұдан былай қолдау көрсетілмейді.
Соңғы мүмкіндіктерді, қауіпсіздік жаңартуларын және техникалық қолдауды пайдалану үшін Microsoft Edge браузеріне жаңартыңыз.
В этой статье перечислены шаблоны, несовместимые с обрезкой с текущим инструментом.
Альтернатива: сериализаторы без Рефлексия ионов.
Многие способы использования отражения можно сделать совместимыми с обрезкой, как описано в разделе Общие сведения о предупреждениях об обрезке. Однако сериализаторы, как правило, имеют сложное использование отражения. Многие из этих способов использования не могут быть удалены во время сборки. К сожалению, наиболее подходящим вариантом часто является перезапись системы для использования исходного поколения.
В следующей таблице перечислены популярные сериализаторы на основе отражения и их рекомендуемые альтернативные варианты.
Сериализаторов | Альтернатива |
---|---|
Newtonsoft.Json | Источник создан System.Text.Json |
System.Configuration.ConfigurationManager | Генератор источника привязки конфигурации |
System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | Переход от сериализации BinaryFormatter из-за недостатков безопасности и надежности. |
Создание кода среды выполнения через JIT,например, через System.Reflection.Emit несовместимо с обрезкой.
Обрезка и динамическая загрузка сборки — это распространенная проблема для систем, которые поддерживают подключаемые модули или расширения, обычно через API, например LoadFrom(String). Обрезка зависит от просмотра всех сборок во время сборки, поэтому он знает, какой код используется и не может быть обрезаны. Большинство систем, которые поддерживают подключаемые модули, динамически загружают сторонний код, поэтому средству обрезки невозможно определить необходимый код.
В следующих разделах перечислены известные несовместимости с обрезкой в Windows.
Программирование NET с помощью C++/CLI в настоящее время не поддерживает обрезку.
Альтернатива: оболочки COM
Автоматический маршалинг COM встроен в .NET, начиная с платформы .NET Framework 1.0. Он использует анализ кода времени выполнения для автоматического преобразования собственных COM-объектов и управляемых объектов .NET. К сожалению, анализ обрезки не всегда может предсказать, какой код .NET необходимо сохранить для автоматического маршаллинга COM. Однако если вместо этого используются оболочки COM, анализ обрезки может гарантировать, что весь используемый код будет сохранен правильно.
Платформа Windows Presentation Foundation (WPF) использует отражение, а некоторые функции сильно зависят от проверки кода во время выполнения. Невозможно обрезать анализ, чтобы сохранить весь необходимый код для приложений WPF. К сожалению, почти никаких приложений WPF не выполняются после обрезки, поэтому поддержка обрезки WPF в настоящее время отключена в пакете SDK для .NET. Сведения о том, как включить обрезку для WPF, см. не удается устранить проблему, совместимую с обрезкой.
Платформа Windows Forms обеспечивает минимальное использование отражения, но во многом зависит от встроенного маршалинга COM. К сожалению, практически нет приложений Windows Forms без встроенного маршаллинга COM, поэтому поддержка обрезки приложений Windows Forms в настоящее время отключена в пакете SDK для .NET. Сведения о включении обрезки для Windows Forms см. в статье о проблеме с совместимостью WinForms.
.NET кері байланысы
.NET — бастапқы коды ашық жоба. Пікір қалдыру үшін сілтемені таңдаңыз:
Оқиға
Интеллектуалды бағдарламаларды құру
Mar 17, 11 PM - Mar 21, 11 PM
Нақты пайдалану жағдайлары негізінде масштабты ИСК шешімдерін құру үшін стипендиаттармен және сарапшылармен кездесу сериясына қосылыңыз.
Қазір тіркелуОқыту
Оқыту бағдарламасы
Use advance techniques in canvas apps to perform custom updates and optimization - Training
Use advance techniques in canvas apps to perform custom updates and optimization