Уменьшение размера XAP с помощью параметра кэширования библиотеки приложений вызывает предупреждения об отсутствующих файлах в ClientBin

Когда я включаю параметр «Уменьшить размер XAP с помощью кэширования библиотеки приложений» в проекте в Silverlight, я обнаружил, что некоторые файлы отсутствуют в моей папке ClientBin и теперь отображаются в обозревателе решений Visual Studio со значком предупреждения на них, например как System.Xml.Linq.zip и System.ServiceModel.DomainServices.Client.Web.zip. Однако подавляющее большинство файлов копируются без предупреждений. Интересно, знает ли кто, как это исправить? Если я включу этот параметр, недостающие файлы будут скопированы в ClientBin. Я предполагаю, что причина их отсутствия с отключенной настройкой заключается в том, что они содержатся в файле XAP, но тогда почему он все еще ожидает, что они будут в ClientBin, и выдает мне значок индикатора предупреждения.


person user964210    schedule 08.06.2012    source источник


Ответы (1)


В разделе свойств файлов со значком предупреждения проверьте поле Copy to Output Directory. Измените его на Copy Always. Это те ссылки, которые вы добавляете в свой проект извне, поэтому включение в ClientBin необходимо. Также проверьте физическое присутствие файлов в каталоге.

person vaibhav    schedule 09.06.2012
comment
Спасибо за ответ, но это не работает. Я просто получаю сообщение об ошибке, что файл не может быть скопирован, потому что он не может быть найден. - person user964210; 11.06.2012
comment
Что ж, внимательно посмотрите каталоги, в которых должны находиться файлы. Если проблема все еще не решена, просто создайте новый проект (или решение), добавьте в него все файлы со ссылками, добавленными в него, а затем выполните указанные выше шаги в ответе. Это может решить проблему, с которой вы столкнулись. - person vaibhav; 12.06.2012