VS / C# Эквивалент «папки ресурсов» Java / Eclipse? - PullRequest
2 голосов
/ 05 августа 2020

При использовании Java в Eclipse IDE можно добавить папку в «Путь сборки», используя параметр «Добавить папку класса» на вкладке «Библиотеки», что позволяет компилировать ресурсы в этой папке внутри jar-файл приложения, а не за его пределами или вообще.

Щелкните здесь, чтобы просмотреть пример .

Таким образом, можно получить ресурсы внутри папки в виде URL-адреса с помощью метода Class.getResource(String name). Я уже проинформирован об эквиваленте C#: Assembly.GetManifestResourceStream(string name) или Assembly.GetManifestResourceInfo(string resourceName), но мне неизвестен эквивалент C# «Путь сборки» в Visual Studio (я использую 2019, если вы хотите знаю). Может ли кто-нибудь объяснить, как мне выполнить sh Java папку ресурсов пути сборки в C#?

(Обратите внимание, что я хочу создать ресурс папка, в которой все, что находится внутри папки, будет считаться ресурсом приложения. Я не ищу способ добавить один или несколько файлов ресурсов по отдельности.)

Любые ответы будут очень благодарны! :)

Ответы [ 2 ]

2 голосов
/ 25 августа 2020

После небольшого исследования я нашел решение этой проблемы. На самом деле существует два возможных решения этой проблемы.

. NET Базовое решение

Первый предполагает редактирование файла .csproj вашего проекта C#. Это решение доступно только в. Net Core.

Вы можете добавить этот фрагмент кода в свой файл и изменить папку {PATH_TO_RESOUCE_FOLDER_HERE} на нужную папку.

<ItemGroup>
    <EmbeddedResource Include="{PATH_TO_RESOUCE_FOLDER_HERE}\**" />
</ItemGroup>

Теперь любой элемент, помещенный в эту папку, будет считаться методом встроенного ресурса Assembly.GetManifestResourceStream(string name).

Обычное. NET Решение

Второй метод предполагает использование файла .resx для инкапсуляции всех ваших ресурсов

В Visual Studio 2019 вы можете создать файл .resx, щелкнув правой кнопкой мыши место в вашем проекте, куда вы sh добавляете файл, и перейдя к Add > New Item (вы также можете нажать Ctrl+Shift+A). Теперь вы можете перейти к элементу, который цитирует «Файл ресурсов», и выбрать его. Теперь вы можете использовать этот GUI для вставки своих ресурсов (для более подробного объяснения нажмите на this или this ссылку. Примеры использования см. В MSDN ).

Параметр «Файл ресурсов»

Обратите внимание, что это решение также будет работать в. NET Core.

Надеюсь, этот ответ помог вам так же, как и мне! :)

0 голосов
/ 05 августа 2020

Вы просто создаете папку и называете ее как хотите, скажем «Ресурсы». Добавьте туда любой файл, который вы хотите, чтобы ваше приложение рассматривало его как ресурс.

Затем перейдите к свойствам каждого файла ресурсов (вы можете нажать F4) и в меню вы можете выбрать то, что вы хотите, чтобы компилятор сделать с этим файлом ( Compile Action - это имя опции, если я хорошо помню). Здесь вы выбираете тип в качестве ресурса, пространство имен (ваш путь сборки) и хотите ли вы, чтобы файл копировался каждый раз, когда вы компилируете приложение, и т. Д.

...