以下代码在 Windows 中运行良好,但是,当使用 Xamarin 并以 iOS 为目标时,GetManifestResourceStream() 返回 null。
Assembly assembly = Assembly.GetExecutingAssembly();
Stream stream = assembly.GetManifestResourceStream("CommunicationModel.XmlSchemas.DeviceCommon.xsd");
我已将文件“DeviceCommon.xsd”设置为嵌入式资源。不知道为什么它没有返回有效的流。
有谁知道为什么这在使用 Xamarin 的 iOS 中不起作用?
更新:
好的,所以我按照评论中的建议将文件设置为 Content。
我现在可以检测到文件,但无法打开它:
if (File.Exists("DeviceCommon.xsd"))
{
try
{
myStream = new FileStream("DeviceCommon.xsd", FileMode.Open);
}
....
}
当我运行上面的代码时,'File.Exists()' 调用有效,但是当我尝试打开它时,我得到以下异常:
Access to the path "/private/var/mobile/Applications/8BD48D1F-F8E8-4A80-A446-F807C6728805/UpnpUI_iOS.app/DeviceCommon.xsd" is denied.
任何人都有一些想法我该如何解决这个问题???
谢谢,柯蒂斯