Ответ 1
Вы можете проверить свойство своего файла и проверить, является ли Custom Tool ResXFileCodeGenerator? Если это GlobalResourceProxyGenerator, выпадающий список будет отключен.
Я пытаюсь создать новые файлы ресурсов в VS2015. Я создал их отлично, но когда я пытаюсь изменить "модификатор доступа", выпадающее меню отключено...
Любые идеи?
Я работаю в ASP.NET MVC 6 (ASP.NET5). Проект представляет собой библиотеку классов, но я тестировал в Web Project с одинаковыми результатами.
Спасибо!!
Изменить: добавлено окно свойств
Вы можете проверить свойство своего файла и проверить, является ли Custom Tool ResXFileCodeGenerator? Если это GlobalResourceProxyGenerator, выпадающий список будет отключен.
У меня была такая же проблема, но я нашел это простое решение Выпадающий вариант модификации Visual Studio Access отключен для файла ресурсов
Подводя итог:
- Щелкните правой кнопкой мыши на своем ресурсе файла, выберите "Свойства" (Alt + Enter)
- Изменить действие сборки для встроенного ресурса
- Сменить пользовательский инструмент на PublicResXFileCodeGenerator
У меня была аналогичная проблема.
Это, по-видимому, известная проблема: https://github.com/aspnet/Tooling/issues/339
A) В проектах Asp.net Core
Эта проблема является известной ошибкой в проектах Asp.net Core
и модификатором доступа по умолчанию public
, и вы не можете ее изменить, Он будет решен командой core asp.net следующих обновлений , но, если вам нужен модификатор доступа internal
, вы можете использовать мое временное решение:
Resource.resx
и сохранить.Resource.resx
и откройте Resource.Designer.cs
public
строки в нем с помощью internal
и сохранить.Примечание: каждый раз, когда вы сохраняете файл
Resource.resx
, вы должны снова выполнить шаг 3.
Наконец, вы должны иметь файл Resource.Designer.cs
с такими модификаторами доступа:
Также проверьте файл namespace
in Resource.Designer.cs
. он должен быть подходящим namespace
. Синхронизировать с вашим проектом namespace
.
B) В обычных проектах Asp.net
Если у вас нет свойства
CustomTool
в файлеProperties panel
для вашего ресурса (.resx
), чтобы изменить его наPublicResXFileCodeGenerator
и решить проблемуЗатем вы должны вручную изменить некоторые параметры в файле проекта (
.csproj
). Это так просто, просто следуйте моим инструкциям:
solution explorer
и выберите Выгрузить проект.csproj
найти строку .resx
вы увидите там блок настроек. Это что-то вроде bellow-кодов.PublicResXFileCodeGenerator
):.
<EmbeddedResource Include="MyResourceFile.resx">
<SubType>Designer</SubType>
<Generator>PublicResXFileCodeGenerator</Generator> <!--important line-->
<LastGenOutput>MyResourceFile.Designer.cs</LastGenOutput>
</EmbeddedResource>
.csproj
solution explorer
и выберите Обновить проект.resx
файл и наслаждайтесь;)Примечание. используйте имя файла ресурса вместо
MyResourceFile