2016-11-11 16 views
1

私はASP.Net Coreのプロジェクトを持っています。このプロジェクトにはリソースファイルからのイメージを含める必要があります(PDFを生成するため)。リソースファイル(resx)を持つasp.netコア

だから、私は管理リソースエディタ(Visual Studioのデフォルトのエディタ)を使用Resource.resx

という名前のVisual Studioを使用して、新しいリソースファイルを(>新しい項目>リソースファイルを追加します)、作成、私は新しいが含まれてlogo.pngという名前の画像。 Resource.Designer.csは、下記の方法で作成されたという名前の新しいファイル:

public static System.Drawing.Bitmap logo { 
    get { 
     object obj = ResourceManager.GetObject("logo", resourceCulture); 
     return ((System.Drawing.Bitmap)(obj)); 
    } 
} 

は今、唯一のテストに、私は次のコードを作成しました:

var logo = Resources.logo; 

これは以下の内容で、新しい例外を投げました:私も、このリンクから、すべてを試してみました

An unhandled exception of type 'System.InvalidCastException' occurred. Additional Information: Unable to cast object of type 'System.String' to type 'System.Drawing.Bitmap'.

: を

でも結果は同じです。

このコードをコンソールアプリケーションで作成すると、すべて正常に動作します。

答えて

2

私の問題ではうまくいきました。

"buildOptions": { 
    "embed": ["Resources/**/*"] 
} 

、その後、私のコード:

http://codeopinion.com/asp-net-core-embedded-resource/

ちょうどプロジェクトにフォルダを作成する必要があります(参考文献私の場合)、その後、project.jsonに、私は次のコードが含まれて:

var assembly = Assembly.GetExecutingAssembly(); 
var logoStream = assembly.GetManifestResourceStream("ProjectNamespace.Resources.logo.png"); 
0

私は、Visual Studio 2017(csprojファイル)を使用しています。このソリューションは、私の仕事: https://stackoverflow.com/a/39368856/812610

Open Solution Explorer add files you want to embed. Right click on the files then click on Properties. In Properties window and change Build Action to Embedded Resource.

埋め込まれたリソースの名前が "[DefaultNamespace]。[フォルダ]は.filename" です。私はそれの「MyProjectName.Resources.cert.pfx」

私のための証明書(cert.pfx)に「リソース」フォルダを保存してそしてこれは私の.csprojに追加されました:

<ItemGroup> 
    <None Remove="Resources\testcert.pfx" /> 
    </ItemGroup> 
<ItemGroup> 
    <EmbeddedResource Include="Resources\testcert.pfx" /> 
    </ItemGroup> 
関連する問題