2009-11-04 3 views
0

Я не могу удалить запись из таблицы с помощью ADO.Net Entity Framework.
Отладка позволяет мне пройти через метод без каких-либо ошибок.Как удалить с помощью ADO.Net Entity Framework

Cust_DataModel.Cust_DataEntities db = new Cust_DataModel.Cust_DataEntities(); 

protected void DeleteButton_Click(object sender, EventArgs e) 
{ 
    if (lvCust.SelectedIndex >= 0) 
    { 
     int custId = Convert.ToInt32(lvCust.SelectedDataKey.Value.ToString()); 
     var cust = db.Cust.FirstOrDefault(d => d.CustId == custId); 

     try 
     { 
      int co = db. Cust.Count(); 
      db.AttachTo("Cust", cust); 

      db.DeleteObject(cust); 
      int co2 = db. Cust.Count(); 
      db.SaveChanges(); 
      int co1 = db. Cust.Count(); 
     } 
     catch (Exception ex) 
     { 
     } 

     lblMessage.Text = "cust was deleted."; 
    } 
    else 
     lblMessage.Text = "No cust was selected."; 
} 

Я могу перечислить элементы из таблицы в ListView.

private void BindCust() 
{ 
    var custs = from cust in db.Cust where cust.UserId == userId orderby cust.Created descending select cust; 

      lvCust.DataSource = custs; 
      lvCust.DataBind(); 
} 
+0

выглядит как cust уже прилагается, так как вы получаете его от db перед удалением ... не так ли? –

+0

Даже если я удаляю инструкцию attach, она не работает. – Picflight

ответ

0

Я не уверен, но вам не нужно сохранять изменения после прикрепления элемента перед его удалением?

Смежные вопросы