2012-07-23 85 views
0

我有一個視圖模型本身與表對象MVC C#視圖模型

public class NoteViewModel 
    { 
     public tblNotes tblnote { get; set; } 
    } 

在我的控制,我做的做了構建後下一所以我控制器知道該視圖模型:

NoteViewModel viewModel= new NoteViewModel(); 

    viewModel.tblnote.NoteModeID = 1234; // get error here 

    return PartialView(viewModel); 

但我收到以下錯誤:

{「對象引用未設置爲對象的實例。」}

回答

0

什麼是類型tblNotes? (注意:在C#中,類名應該以大寫字母開頭,作爲約定。)

由於這是自定義類型,因此是引用類型,因此其默認值爲null。所以當你實例化一個新的NoteViewModel時,除非另有說明,否則它會將其所有成員設置爲默認值。由於該值是null,你不能在這裏使用它:

viewModel.tblnote.NoteModeID = 1234; 

不知道更多關於你的類型,答案很簡單,只是實例化視圖模型的構造函數成員:

public class NoteViewModel 
{ 
    public tblNotes tblnote { get; set; } 

    public NoteViewModel() 
    { 
     tblnote = new tblNotes(); 
    } 
} 

這樣,每當創建視圖模型時,對象都將被實例化,因此您可以使用它。

0

究竟是什麼tblNotes?如果它是參考類型,則在第一行代碼執行後,viewModel.tblNotenull