C#GetManifestResourceStream返回null

zAf*_*fLu 3 .net c# stream embedded-resource

我正在使用C#WinForms应用程序.我需要嵌入一个.dll,我尝试将此文件从Resource"导出"到HDD.

我使用默认表单资源...

System.IO.Stream s = Assembly.GetExecutingAssembly().GetManifestResourceStream("FormNamespace.Form1.Newtonsoft_Json");
Run Code Online (Sandbox Code Playgroud)

文件名是Newtonsoft.Json.dll,我也尝试过:

System.IO.Stream s = Assembly.GetExecutingAssembly().GetManifestResourceStream("FormNamespace.Form1.Newtonsoft.Json.dll");
Run Code Online (Sandbox Code Playgroud)

两者都不起作用.s始终为null.我认为我使用错误的方式来访问资源,但我不知道:(

如果有人可以帮助我会很好:)

Pao*_*sco 5

如果您已将构建操作正确设置为"嵌入式资源",则问题很可能是资源的名称.

它应该是命名空间+文件名; 你试过FormNamespace.Newtonsoft_Json.dll吗?

否则,您可以尝试执行GetManifestResourceNames方法并查看它返回的内容.