Ich habe eine Anwendung, die in der Benutzeroberfläche Kategorien, die bereits in der DB vorhanden sind, zu einem Produkt hinzufügen und dann zurück an das Back-End senden kann.Anfügen eines gelöschten Objekts an Kontext
Aber wenn ich versuche, es wie folgt zu speichern (Versuche 1 und 2), speichert es nicht die angefügten Kategorien in der Datenbank.
Was fehlt mir?
public bool SaveProduct(Product product)
{
//Try 1
foreach(var item in product.Categories) {
db.Entry(item).State = item.Id == 0 ?
EntityState.Added :
EntityState.Modified;
}
//Try 2
foreach(Category category in product.Categories) {
db.Entry(category).State = EntityState.Modified;
db.Category.Attach(category);
}
return Save();
}
public class Product
{
public int Id { get; set; }
public string Title { get; set; }
public List<Category> Categories { get; set; }
}
public class Category
{
public int Id { get; set; }
public string Name { get; set; }
}
Was macht die 'Save()' Methode? –
Es ist nur 'db.SaveChanges();' mit Loggin und Fehlerbehandlung. – Niklas