Мне бы хотелось два, как сделать так, чтобы файлы ресурсов делились между 2 (или более) проектами?
Итак, для резюме, у меня есть три проекта:
проект разработки (CF).NET), который включает файл ресурсов (со всеми определениями).
У меня есть два других проекта, которые являются пустыми, НО связаны с проектами разработки, это просто разная сборка каждый раз, поэтому, когда я изменяю разработкупроект, все три проекта тоже обновляются.(Модификация файла csproj.)
Вопрос в том, что насчет файлов ресурсов?Когда я пытаюсь получить доступ из проекта разработки, я получаю все ресурсы, но когда я пытаюсь получить доступ к двум другим, он выдает «MissingManifestResourceException».
Есть идеи, как решить эту проблему?
Спасибо.
[EDIT]
Вот что я сделал:
Создайте проект с именем «RealProject», который содержит весь код(включая файлы ресурсов) Создайте проект с именем «LinkedProject», который ничего не содержит (я удалил в него все файлы и изменил файл csproj следующим образом:
<ItemGroup>
<Compile Include="..\RealProject\**\*.cs" />
</ItemGroup>
Итак, в каталоге LinkedProject я только:
- [Каталог] bin
- [Каталог] obj
- [Файл] LinkedProject.csproj
Весь LinkedProject использует файлы RealProjectэто просто другая конфигурация конфигурации (см. здесь, чтобы узнать почему: C # - Компилятор кода для .NET & CF.NET )
Однажды в этой конфигурации у меня нет доступа кфайлы ресурсов из RealProject ...
Если вам нужны экраны или более подробное объяснение, просто спросите.
[EDIT]
С этим кодом все работает, менеджер ресурсов не загружается нахорошее имя сборки, но оно должно существовать лучшее решение !!!
Assembly ass = Assembly.ReflectionOnlyLoadFrom(@"..\..\..\RealProject\bin\Debug\RealProject.dll");
ResourceManager manager = new ResourceManager("RealProject.Properties.Resources", ass);
[Решение]
Что нужно проверить:
- LinkedProject в том же пространстве имен, что и RealProject
- Добавление ресурсов в виде ссылок
- Очистка всего вашего решения
- Перестройка
Тест!