Как удалить baml из сборки WPF?
Использование объединенных словарей ресурсов снижает производительность приложения. В моей сборке мне часто нужно использовать объединенные словари ресурсов. Я хочу объединить ресурсы в одном словаре и удалить исходный baml. Я не могу установить Build Action на None (вместо Page), потому что в этом случае я теряю некоторую функциональность (например, отсутствие подсветки синтаксиса с помощью resharper). Как я могу это сделать?
1 ответ
Во время выполнения вашему приложению все еще нужно читать связанные файлы ресурсов BAML, поэтому вы не можете удалить BAML из вашей сборки.
Например:
Вы объединяете следующие словари ресурсов
dictionary1.xaml
dictionary2.xaml
в merged.xaml
,
Вы не можете просто удалить скомпилированный XAML (BAML - dictionary1.baml
а также dictionary2.baml
), потому что, как я писал, во время выполнения вам все еще нужны эти ресурсы.
Но, в любом случае, вы можете буквально скопировать содержимое ваших ресурсов XAML на merged.xaml
таким образом у вас будет только merged.baml
(после того, как компилятор сгенерировал его в вашей части ресурса сборки).