Windows 8博客阅读器教程NullPointerException

时间:2013-01-13 16:56:55

标签: c# xaml microsoft-metro

我关注的是Microsoft Windows博客阅读器示例here

一半我得到了一个N​​ullPointerException,所以我想我可能没有正确地遵循教程。

他们还提供了完整的代码,所以我复制了它并创建了一个新项目,当我去运行它时,我得到了相同的NullPointerException。

我发现很难相信微软会有一个错误的教程,所以我想知道它只是我吗?

如果有问题,是否可以找到完成的代码?

这是导致异常的行,但它不是唯一的行。

var matches = _feedDataSource.Feeds.Where((feed) => feed.Title.Equals(title));

3 个答案:

答案 0 :(得分:1)

正如Hans所说,你可能最好抓住http://code.msdn.microsoft.com/windowsapps提供的一个样本。

访问上述网站上的示例的一个好处是每个样本的代码都可以在线浏览,因此如果样本适合您的需要,您可以在下载之前了解。

但另一个很酷的技巧是你也可以使用Visual Studio 2012中的New Project对话框来获取这些应用程序。只需使用File>新建项目,并在左侧窗格中查找“在线”部分(见下文):

New Project Dialog

进入所选语言的在线部分后,您可以使用右上角的搜索框来过滤您想要样本的功能。在我准备实施这些功能时,我会定期使用它来了解新功能。

有关开发Windows应用商店应用的详细信息,请查看Generation App

答案 1 :(得分:1)

过去几天,我正在开发另一款应用: Channel9 Blog Reader 。 它与 Windows 8博客阅读器相同,主要区别在于源链接已从“ windowsteamblog.com ”或“ blogs.windows.com “to” channel9.msdn.com “。

此外还有一些小的变化,因为它是Windows 8.1应用程序&不是Windows 8应用程序,所以如果你阅读这篇关于将Windows 8应用程序迁移到Windows 8.1应用程序的文章会更好: - migrating a Win 8 app to Win 8.1 app

以下是该应用源代码的链接: - Channel9 Blog Reader App Source Code

答案 2 :(得分:0)

某些Feed链接已损坏,因此返回的Feed数据包含一些空Feed,解析它们会导致此异常。

更改此行代码:

var matches = _feedDataSource.Feeds.Where((feed) => feed.Title.Equals(title));

到:

var matches = _feedDataSource.Feeds.Where((feed) => feed != null && feed.Title.Equals(title));

这会忽略那些空的Feed。