Я работаю над проектом ASP.NET MVC2, для которого я настроил локализацию следующим образом ...
У меня есть отдельная сборка ресурсов, содержащая все мои файлы resx. Настройки для каждого файла resx ...
Build Action = Embedded Resource Copy to Output Directory = Do not copy Custom Tool = PublicResXFileCodeGenerator Custom Tool Namespace = Resources
У меня есть инструмент, который экспортирует строки из базы данных в файлы resx и вызывает инструмент resgen.exe для воссоздания файла designer.cs.
Все это отлично работало, даже когда я изменил языковые настройки своего браузера и обновил страницу. Он подберет правильные струны.
Это было во временной рабочей папке (я использую subversion). Теперь я перешел к работе в своей обычной папке и получаю довольно странную ошибку.
Сообщение об ошибке компилятора: CS0433: тип "Resources.XXXX" существует в обоих "c: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Temporary ASP.NET Files \ root \ 6c657d01 \ aaca70ae \ assembly \ dl3 \ a36dac65 \" 78c87110_3724cb01 \ Resources.DLL 'и' c: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Temporary ASP.NET Files \ root \ 6c657d01 \ aaca70ae \ App_GlobalResources.g6fehiio.dll '
Я удалил все свои временные файлы asp.net, повторно запустил веб-приложение, и оно регенерирует обе вышеупомянутые сборки. Действительно странно, что все это работало до того, как я перешел в свою обычную рабочую папку.
Итак, может ли кто-нибудь сказать мне, что генерирует эту сборку App_GlobalResources, которая мне не нужна или не нужна, потому что все мои ресурсы содержатся в сборке ресурсов, которую я создал.
PS - Причина, по которой я выбрал Resources.dll, заключалась в том, чтобы обойти проблему, с которой я столкнулся с созданием ресурсов с помощью моего инструмента извлечения базы данных. (см. здесь < / а>)
PPS - я использую VS2010