2014-09-10 68 views
0

我正在製作一個Windows 8商店博客閱讀器應用程序,並且在從我的應用程序的第一頁導航到第二個應用程序時遇到問題。第一頁提供了一個項目列表,點擊一個,您可以導航到第二個頁面,該頁面根據標題提供有關所選項目的更多信息。這樣做的代碼如下。c#博客閱讀器導航不起作用

public static FeedData GetFeed(string title) 
    { 
      // Simple linear search is acceptable for small data sets 
      var _feedDataSource = App.Current.Resources["feedDataSource"] as FeedDataSource; 

      var matches = _feedDataSource.Feeds.Where((feed) => feed.Title.Equals(title)); 
      if (matches.Count() == 1) return matches.First(); 
      return null; 


    } 

當我運行應用程序時,我得到了錯誤NullReferenceWasUnhandledByUserCode。你調用的對象是空的。有人可以爲此提供解決方法。

+0

您返回null你的自我... HTTP://stackoverflow.com/questions/4660142/what-is-a-的NullReferenceException和知識-DO-I-FIX-它 – rene 2014-09-10 12:34:41

回答

0

某些供稿鏈接已損壞,因此返回的供稿數據包含一些空供稿,解析它們會導致此異常。

更改這行代碼:

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

到:

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

這會忽略那些空的飼料。

0

閱讀器應用程序當前MSDN文檔在Windows博客教程是相當過時,並提到飼料環節也被打破,因爲微軟改變了窗戶博客 S中的鏈接,從「windowsteamblog.com」到「博客.windows.com

我一直在試圖最近本教程,&不幸碰到了很多錯誤,異常,等等。爲了解決這個問題,我在網上搜索,&還發現剪切沒有。的人面對這個問題。我也遇到了一個channel9博客,裏面有一個channel9博客列表。所以,我用這些鏈接&轉換Windows博客閱讀器應用程序到頻道9博客閱讀器應用程序。

這是一樣的Windows 8的博客的讀者,主要區別是飼料環節從「windowsteamblog.com」改變或「blogs.windows.com」到「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