2016-05-06 17 views
0

Ich versuche, eine Entität zu löschen, die zum Kontext hinzugefügt wird, ohne die Änderungen zu speichern. Ich bekomme FK Constraint-Fehler. Die Entität ist temporär und muss nicht in der Datenbank gespeichert werden. DieseLöschen einer Entität in Entity Framework

ist, wie ich die Einheit am Hinzufügen

var productSalesRight = new ProductSupplierSalesRight 
          { 
           Product = product, 
           ProductId = product.ProductId, 
           SalesRightTypeId = countries.FirstOrDefault().SalesRightTypeId, 
           SalesRightType = countries.FirstOrDefault().SalesRightType, 
           Countries = ct 
          }; 

product.ProductSupplierSalesRights.Add(productSalesRight); 

Dies ist, was ich in meinem Code tue lösche

_context.Entry(productSalesRight).State = EntityState.Deleted; 
product.ProductSupplierSalesRights.Remove(productSalesRight) 

Gibt es einen richtigen Weg, um eine Einheit zu löschen?

Antwort

0

Sie sollten Ihren temporären Entitätsdatensatz trennen, wenn Sie ihn nicht weiter in die Datenbank einfügen möchten.

Siehe ObjectContext.Detach Method (Object)

_context.Detach(productSalesRight); 
Verwandte Themen