如何使用GetManifestResourceStream

在做开发时想要从程序集中加载一个xml文件数据,可是在运行后确取不到值,值始终是null。

代码如下:

Stream ss = this.GetType().Assembly.GetManifestResourceStream("TESTdemo.demo.FormDemo.xml");
myControl.LoadDocument(ss, null);//ss为null;

经查资料:GetManifestResourceStream中的资源清单,资源清单格式:命名空间.资源文件名,(注意:资源清单格式 加黑加粗以及加红的特殊点),

所在的程序集的命名空间名为TESTdemo,直接在命名空间建立子文件demo,又在demo建立资源文件FormDemo.xml,所以上面的代码就用(“命名空间名”.“资源清单名”)

如上代码运行后取得的值为null,经网上查找资料,原因是虽然资源清单在当前程序集下,但是还要将其属性设置为“嵌入资源”才行。

 若在其中的子文件夹下那么代码中就应该用(“命名空间名”.“子文件夹名”.“资源清单名”)  (此情况本人已测试可以获得数据,重要路径正确就可以,见最后一个图)

设置如下:

       工程中右键单击资源清单文件(FormDemo.xml),选择属性(Properties)。

       

 

若在其中的子文件夹下那么代码中就应该用(“命名空间名”.“子文件夹名”.“资源清单名”)  (此情况本人已测试可以获得数据)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值