Dan*_*ell 0 c# xml silverlight silverlight-4.0 windows-phone-7
我收到了一个XML RSS提要.其中一个标签看起来像这样:
<georss:point>55.0794503724671 -3.31266344234773</georss:point>
Run Code Online (Sandbox Code Playgroud)
我需要一种简单的方法将这两个lat和long值提取为单独的值[作为我的其他XML读取foreach循环的一部分..].
编辑:
我现在正在尝试:
private void OnOpenReadCompleted(object sender, OpenReadCompletedEventArgs e)
{
var document = XDocument.Load(e.Result);
if (document.Root == null)
return;
var georss = XNamespace.Get("http://www.georss.org/georss");
var events = from ev in document.Descendants("item")
//how can I define the below for the Value.split?
//var points = from point in parentElement.Elements(geoRssNs + "point")
let values = ev.Value.Split(' ')
select new
{
Latitude = double.Parse(values[0], CultureInfo.InvariantCulture),
Longitude = double.Parse(values[1], CultureInfo.InvariantCulture),
Title = (ev.Element("title").Value),
Description = (ev.Element("description").Value),
PubDate = (ev.Element("pubDate").Value),
};
//Add pushpin here
Run Code Online (Sandbox Code Playgroud)
}}
令我感到震惊的是,这不是真正的XML - 它只是正常的字符串处理.例如,它可能是这样的:
XNamespace geoRssNs = "http://whatever/url/it/is";
var points = from point in parentElement.Elements(geoRssNs + "point")
let values = point.Value.Split(' ')
select new
{
Latitude = double.Parse(values[0], CultureInfo.InvariantCulture),
Longitude = double.Parse(values[1], CultureInfo.InvariantCulture)
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
864 次 |
| 最近记录: |