さまざまなソースからRSSフィードを読み取り、VB.netのオブジェクトの1つのコレクションに統合するための汎用クラスを作成していました。ノードが存在しない場合のLINQ to XML
LINQ to XMLを使用している機能は基本的には正常に動作していますが、読んでいるRSSフィードにはノードのいずれかが含まれていないと問題が発生します。返される値は空の文字列か何も返されませんが、代わりにランタイムエラーが返されます。 ウェブで同じ問題が検索されましたが、この記事では明らかに回避策について説明しているhttp://forums.asp.net/p/1351226/2762834.aspx#2762834というポストが見つかりましたが、自分のコードでは機能しません。
私も、私はこの問題について発見していますので、私も右の用語で質問を入れていた場合、私は今疑問に思って少しリソースによって驚いて...
あなたは、コードを見つけることができます次のとおりです。
Dim PostsEnum = From BlogPost In XMLSource.Descendants("item")
Order By DateTime.Parse(BlogPost.Element("pubDate").Value) Descending
Select New Post() With {
.Title = BlogPost.Element("title").Value,
.Link = BlogPost.Element("link").Value,
.Description = BlogPost.Element("description").Value,
.AuthorText = BlogPost.Element("author").Value,
.Category = (From tag In BlogPost.Descendants("category")
Select cat = tag.FirstNode.ToString).ToList,
.PubDate = DateTime.Parse(BlogPost.Element("pubDate").Value),
.GUID = BlogPost.Element("guid").Value
}
私はhttp://neatlydoc.codeplex.com/Project/ProjectRss.aspxでこれを試してみました、それが働いたが、次のコードは、例外を生成します。
Dim PostsEnum = From BlogPost In XMLSource.Descendants("item")
Order By DateTime.Parse(BlogPost.Element("pubDate").Value) Descending
Select New Post() With {
.Title = BlogPost.Element("title").Value,
.Link = BlogPost.Element("link").Value,
.Description = BlogPost.Element("description").Value,
.AuthorText = BlogPost.Element("author").Value,
.Category = (From tag In BlogPost.Descendants("category")
Select cat = tag.FirstNode.ToString).ToList,
.PubDate = DateTime.Parse(BlogPost.Element("pubDate").Value),
.GUID = BlogPost.Element("guid").Value,
.Source = CType(BlogPost.Element("source").Value, String)
}
すべてのヘルプはAPPRになりますeciated。
おかげ
ルカ
更新を参照...見つけて固定... –
ありがとうございました。 – lucamauri
私はどちらですか? (混乱して...) –