Встраивать ресурс в сборку .NET без префикса сборки? - PullRequest
4 голосов
/ 16 марта 2010

Когда вы встраиваете ресурс в сборку .NET с помощью Visual Studio, ему предшествует имя сборки. Однако сборки могут иметь встроенные ресурсы без префикса имени сборки. Единственный способ сделать это - разобрать сборку, используя ILDASM, затем собрать ее заново, добавив новый ресурс - что работает, но ... мне действительно нужно закончить это предложение?

(Desktop .NET Framework 3.5, Visual Studio 2008 с пакетом обновления 1 (SP1), C #, Windows 7 Enterprise x64.)

Ответы [ 2 ]

8 голосов
/ 02 октября 2011

На самом деле, есть способ, но вам нужно отредактировать .csproj вручную.

В файле .csproj найдите элемент EmbeddedResource, который будет выглядеть следующим образом:

<EmbeddedResource Include="Resources\MyImage.png" />

Добавьте дочерний элемент LogicalName, как показано ниже.

<EmbeddedResource Include="Resources\MyImage.png">
  <LogicalName>MyImage.png</LogicalName>
</EmbeddedResource>

После внесения этого изменения ресурс можно выбрать как «MyImage.png» - пространство имен по умолчанию и имя папки не указаны.

Похоже, эта возможность была доступна с 2005 года .

0 голосов
/ 16 марта 2010

Не имя сборки - пространство имен;) Пространство имен по умолчанию, IIRC. Префикс является пространством имен по умолчанию;)

...