[英]Reading and writing to XML file
我有一个Xamarin.forms共享项目,我想读写一个XML文件,该文件必须本地驻留在每个平台(Android,iOS和Windows)上。
我指的是: 处理文件 ,但似乎出现错误:
Error 2 The type or namespace name 'SharedPage' could not be found (are you missing a using directive or an assembly reference?)
第一行: var assembly = typeof(SharedPage).GetTypeInfo().Assembly;
由于我是Xamarin.forms的新手,所以我也想知道每个平台项目必须将文件放置在何处。
在您的代码中,您将名称空间引用为Test151.XML.WinPhone
,但是您应该引用的实际名称空间是Test151.WinPhone.XML
,因为您的WinPhone
项目具有程序集根目录Test151.WinPhone
。
因此,您必须在TryFile.cs中更改此设置:-
#if WINDOWS_PHONE
//var resourcePrefix = "Test151.XML.WinPhone.";
var resourcePrefix = "Test151.WinPhone.XML.";
#endif
您还尝试从XML文件夹中获取资源,但尚未将文件设置为EmbeddedResource
,因此您也需要这样做。
此外,您尝试使用Xamarin.Forms
的程序集尝试Xamarin.Forms
加载资源,因此-在您拥有的位置:-
var assembly = typeof(ContentPage).GetType().Assembly;
您需要按照以下方式将其更改为:(由于它是一个SharedProject
,它将为您提供正确的程序集,从中可以从中加载资源。
var assembly = typeof(TryFile).Assembly;
最后一件事,您提到要从XML文件读取和写入。 您提到的从“使用文件”页面实现的此代码部分将无法为您提供帮助,因为您尝试加载无法回写的嵌入式资源,除非您打算编写此代码之后到文件系统?
如果您的目标是完成对本地存储中文件的读取和写入,则它实际上是文档的第二部分。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.