Объект ресурса с ключом<ключ>не найден. Автоматически развернутое приложение ASP.NET MVC3
У меня есть приложение ASP.NET MVC 3, которое я локализовал с помощью LocalResources. Все (как всегда) работает на моей машине, но когда приложение развертывается (с помощью tfs auto-deploy) в моей среде тестирования, я получаю следующую ошибку:
Объект ресурса с ключом '' не найден
Мои файлы ресурсов (в папках App_LocalResources) помечены как EmbeddedResources, с ними связан пользовательский инструмент, и их доступность установлена в Public.
Когда я смотрю на то, что развертывается в тестировании, я вижу только один намек на ресурсы - это некоторые специфичные для культуры болдеры в /bin (то есть /bin/en, который содержит одну.dll).
Моя интуиция говорит мне, что мне почему-то не хватает ресурсов по умолчанию.
Что мне не хватает?
2 ответа
Вопреки тому, что каждый учебник в Интернете говорит вам, вам не нужно устанавливать Build Action в EmbeddedResource. В моем случае мой код заработал, установив его в Content. Таким образом, файлы ресурсов развертываются вместе с вашим кодом.
Я обычно использую App_GlobalResources для многоязычных файлов. Вы также можете щелкнуть правой кнопкой мыши свойства на resx и изменить Build Action на Embedded Resource, который, как мы надеемся, должен включить его в вывод, как и ожидалось.