簡體   English   中英

從表中獲取數據時未設置實體框架對象引用

[英]Entity Framework object reference not set when getting data from table

command = "INSERT INTO clients VALUES(" + NameTB.Text +")";
objCtx.SaveChanges();

List<Client> clients = new List<Client>();
clients = objCtx.ExecuteStoreQuery<Client>("Select * from clients").ToList();

string x = "";
for (int i = 0; i < clients.Count; i++)
     x += clients[i].Name.ToString();//exception here

MessageBox.Show(x);

我剛開始使用EF,卻不知道如何解決這個問題。 我從這里取了代碼

聽起來好像Name屬性在返回的Client數據中為null。

在數據庫中有此字段為必填項的約束或添加空檢查:

string x = "";
for (int i = 0; i < clients.Count; i++) {
     if (!String.IsNullOrEmpty(clients[i].Name)) {
          x += clients[i].Name.ToString();
     }
}

另外,如果您要與許多客戶端一起使用,並且您的字符串將變大,建議您看一下StringBuilder

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM