Связано: Что может вызвать ошибку Visual Studio / C # MSB3105: дубликаты ресурсов
Я бы хотел, чтобы в моем проекте было несколько идентичных именованных файлов ресурсов, все они разделены пространством имен. Следующая настройка:
Project
- Namespace1 [also a Folder]
- MyResourceFile.resx
- Namespace2.SubNamespace1 [two folders]
- MyResourceFile.resx
Это легко сделать, установив Namespace
-property файлов ресурсов в правильные пространства имен. К сожалению, это остановит компилятор:
Элемент obj \ x86 \ Debug \ Project.MyResourceFile.resx был указан более одного раза в параметре «Ресурсы». Дублирующиеся элементы не поддерживаются параметром «Ресурсы».
Как представляется, файлы ресурсов скомпилированы в файл с именем ProjectNameSpace.Filename.resx
, что является проблемой, если вы хотите иметь несколько одинаковых именованных файлов ресурсов в разных пространствах имен.
Кто-нибудь знает, как я могу изменить это поведение?
Причина, по которой я этого хочу, заключается в том, что я хочу хранить SQl-операторы в файлах ресурсов. Слой данных моего приложения скрыт за интерфейсами, которые допускают несколько реализаций, поэтому я подумал о следующей структуре:
Project
- ModuleNamespace
- IData.vb
- Datas
- MySQL
- Data.vb (Implementation of IData)
- Queries.resx
- SQLite
- Data.vb
- Queries.resx
- and so on...
Я бы добавил эти запросы в простой файл классов и использовал бы его, но в этом проекте я использую VB.NET ... что добавляет немного боли, если строка занимает несколько строк ...