silverlight5如何读取本地xml文件

allenhiman 2011-07-12 03:17:02
我现在的环境是 silverlight5
想要在sl中读取本地的一个xml 这个xml放在本地哪个位置无所谓

我把data。xml和。xap和网页放到同一目录下 用下面的代码无法读取xml

using(XmlReader reader = XmlReader.Create( "data.xml") )
{
}
或者
using(XmlReader reader = XmlReader.Create( "d:/data.xml") )
{
}

请问 sl 要怎样读取本地的xml文件啊?
...全文
492 点赞 收藏 16
写回复
16 条回复
maxmax1986 2012年05月30日
可以把你读取xml的方法分享下吗,就算没实现,你那个比较绕的也行,现在就是要做个测试,本来使用网络上的资源,但是付费的,只能拿本地的xml做测试了,谢了先,最好发站内信给我谢谢了
回复 点赞
程兴亮 2011年07月18日
在Silverlight 5中如果要访问本地的文件,需要提升Silverlight程序在本地的访问权限。可以参考下面一篇文章对本地文件的访问。
http://www.cnblogs.com/chengxingliang/archive/2011/04/28/2030800.html
回复 点赞
wsygr_2007 2011年07月18日
xml放在web根目录,.CS读取xml文件中变量值
webClient = new WebClient();
webClient.DownloadStringCompleted += new DownloadStringCompletedEventHandler(webClient_DownloadStringCompleted);

webClient_DownloadStringCompleted方法
private void webClient_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{

if (e.Error == null)
{
XmlReader reader = XmlReader.Create(new StringReader(e.Result));


XDocument document = XDocument.Load(reader);
XElement root = document.Element("config");

wcfUri = root.Element("WcfUri").Attribute("value").Value;
wcfUri = wcfUri.Replace("%root%", ServerUri);
_ControlServerIP = root.Element("controlServer").Attribute("ip").Value;
_ControlServerPort = int.Parse(root.Element("controlServer").Attribute("port").Value);
mapServiceUri = root.Element("MapUri").Attribute("value").Value;
mapServiceUri = mapServiceUri.Replace("%root%", ServerUri);


controlBox_Ip = root.Element("Control_box").Attribute("ip").Value;


//this.RootVisual = new MainPage();
}
}
供参考!!
回复 点赞
allenhiman 2011年07月18日
[Quote=引用 12 楼 shaxiaoliang 的回复:]
引用 11 楼 allenhiman 的回复:

引用 10 楼 shaxiaoliang 的回复:
貌似是sl中不允许读取客户端具体路径的文件的,这个是由沙盒限制的!我现在也为了获取具体路径而恼火呢!

图片却是可以的 我用image控件加载“d:/xx.png"是可以加载的 读取xml就不管事儿

好像运行的时候就不显示了,在vs里头是能显示的
[/Quote]
我的能显示啊 我的程序要同步windows桌面墙纸 就是直接弄的绝对路径
回复 点赞
shaxiaoliang 2011年07月18日
[Quote=引用 11 楼 allenhiman 的回复:]

引用 10 楼 shaxiaoliang 的回复:
貌似是sl中不允许读取客户端具体路径的文件的,这个是由沙盒限制的!我现在也为了获取具体路径而恼火呢!

图片却是可以的 我用image控件加载“d:/xx.png"是可以加载的 读取xml就不管事儿
[/Quote]
好像运行的时候就不显示了,在vs里头是能显示的
回复 点赞
allenhiman 2011年07月18日
[Quote=引用 10 楼 shaxiaoliang 的回复:]
貌似是sl中不允许读取客户端具体路径的文件的,这个是由沙盒限制的!我现在也为了获取具体路径而恼火呢!
[/Quote]
图片却是可以的 我用image控件加载“d:/xx.png"是可以加载的 读取xml就不管事儿
回复 点赞
shaxiaoliang 2011年07月18日
貌似是sl中不允许读取客户端具体路径的文件的,这个是由沙盒限制的!我现在也为了获取具体路径而恼火呢!
回复 点赞
allenhiman 2011年07月18日
[Quote=引用 8 楼 zealot112345 的回复:]
用webclient.它提供以字符串格式读取和流形式读取。
[/Quote]

我看到有人这样说 不过那个xml好像是必须在网页服务器上才行啊 我这个程序没有服务器的
回复 点赞
zealot112345 2011年07月15日
用webclient.它提供以字符串格式读取和流形式读取。
回复 点赞
allenhiman 2011年07月15日
[Quote=引用 6 楼 malin2670372 的回复:]
请先搞清楚silverlight的访问文件的权限...比如独立存储区、OOB情况等...
没搞清楚白搭!
[/Quote]
...您的意思是能还是不能啊? 我现在有别的办法可以用 只是需要绕一下 我就是看看有没有正规的办法,业余搞。net的业余程序员。。。 没办法 不想搞那么多 只想知道能或不能 能要怎么做?
回复 点赞
allenhiman 2011年07月13日
FileInfo xml = new FileInfo("d:/data.xml");也会卡住。。。
回复 点赞
allenhiman 2011年07月13日
string fullpath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\data.xml";
这句直接卡住了 执行不了啊
回复 点赞
allenhiman 2011年07月13日
[Quote=引用 2 楼 putianchengp 的回复:]
string fullpath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\" + path;

FileInfo xml = new FileInfo(fullpath);
XmlReader xml_Rd = XmlReader.Create(xml.OpenRead());你错的应该是我……
[/Quote]
仁兄 这种写法的话 我的data。xml应该放在哪个目录下啊?
回复 点赞
malin2670372 2011年07月13日
请先搞清楚silverlight的访问文件的权限...比如独立存储区、OOB情况等...
没搞清楚白搭!
回复 点赞
putianchengp 2011年07月12日
string fullpath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\" + path;

FileInfo xml = new FileInfo(fullpath);
XmlReader xml_Rd = XmlReader.Create(xml.OpenRead());你错的应该是我标注的红色字体部分
回复 点赞
allenhiman 2011年07月12日
up 一下
回复 点赞
发动态
发帖子
WPF/Silverlight
创建于2007-09-28

8160

社区成员

1.1w+

社区内容

WPF/Silverlight相关讨论
社区公告
暂无公告