2013-03-13 40 views
0
成立新的實體屬性,以現有實體的財產

我創建了一個新的實體對象:在ObjectContext的

mplToCreate = this._context.MasterPartsList.CreateOBject(); 

的話,我想在parentPnID設置爲我試着查詢使用現有項目的屬性以下IQueryable表達:

mplToCreate.parentPnID = this._context.MasterPartNumbers.FirstOrDefault(x => x.pn == this._selectedItem.Pn).pnID; 

但我在該行獲得了NullReferenceException。 (我知道在MasterPartNumbers中存在pnID與此邏輯匹配。)

請幫助我更正我的右手錶達式,以便我可以相應地設置屬性。

+0

@RaphaëlAlthaus查看下面最新的評論尼古拉斯巴特勒的回答。 – Rachael 2013-03-13 09:00:41

回答

0

這是一個錯字,還是它的問題?

// assignment 
FirstOrDefault(x => x.pn = this._selectedItem.Pn) 

// equality 
FirstOrDefault(x => x.pn == this._selectedItem.Pn) 
+0

糟糕!對不起@NicholasButler,那只是一個錯字。這在我的應用程序中是正確的。 – Rachael 2013-03-13 08:40:51

+0

沒問題。你的代碼看起來是正確的 - 我猜想問題在於你的數據。表達式的哪一部分爲空? – 2013-03-13 08:45:24

+0

啊。我累了。我只是從我的SaveEntities RelayCommand裏面意識到SelectedItem目前是空的(它們看起來像Josh Smith's)。我應該如何將當前的屬性值傳遞給我的RelayCommand?你會碰巧知道嗎?謝謝你的幫助。我很確定這會解決我的問題。爲了以防萬一,我會爲此啓動一個新的Q. – Rachael 2013-03-13 08:53:22