namespace YuChaiIOTestTool.Data
{
    class ScanData
    {
        XmlDocument myxml = new XmlDocument();

        public ScanData()
        {
            Type type = System.Reflection.MethodBase.GetCurrentMethod().DeclaringType;
            String _namespace = type.Namespace;
            Assembly _assembly = Assembly.GetExecutingAssembly();
            String resourceName = _namespace + ".CN_SCAN.xml";
            Stream stream = _assembly.GetManifestResourceStream(resourceName);
            myxml.Load(stream);
        }
    }
}

在同一命名空间中,资源文件名为CN_SCAN.xml

结果stream得到了一个null的结果

VB.Net中资源的名称为:项目默认命名空间.资源文件名

C#中则是:项目命名空间.资源文件所在文件夹名.资源文件名

用GetManifestResourceStream获取的资源要保证包含在工程中,不包含在工程中即使在同一目录下也没用。包含在工程中以后把该文件的“属性”中的“生成操作”改为“嵌入的资源”。就可以用了


版权声明:本文为weixin_45922803原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_45922803/article/details/117226941