Ich verbindliche Liste von entities
zu einem Datenrasteransicht wie folgt aus:Wie Liste der geänderten Objekte in Entity Framework bekommen 5
var orders = context.Order.ToList();
BindingList<Order> orderList = new BindingList<Order>(orders);
dataGridView1.DataSource = orderList;
Benutzer neu direkt auf Datagridview bearbeiten oder hinzufügen können. Wenn Benutzer auf die Schaltfläche Save
klicken, um die Leistung zu optimieren, möchte ich die Liste der Entitäten abrufen, die geändert/neu hinzugefügt wurden, um das Einfügen/Aktualisieren durchzuführen. Wie kann ich das erreichen?
EDIT definieren neue Zeile Grid hinzuzufügen:
BindinList<Order> orders = (BindingList<Order>)dataGridView1.Datasource;
order.Add(new Order());
EDIT 2 Löse:
BindinList<Order> orders = (BindingList<Order>)dataGridView1.Datasource;
Order order = new Order();
context.Order.Add(order);
order.Add(order);
Vielen Dank für Ihre schnelle Antwort. Ihr Code kann eine Liste modifizierter Entitäten abrufen, aber er kann keine Liste neuer Entitäten abrufen. Ich stelle Code zur Verfügung, mit dem neue Entitäten hinzugefügt werden können. Kannst du mir helfen, es herauszufinden? –
@DoanCuong, siehe zusätzliche Antwortdetails. –
Entschuldigung, aber würdest du mir bitte zeigen, wie man 'BindingSource.Add()' oder 'IBingdingList.Add()' implementiert? Und noch eine Sache, es gibt keine 'ToBindingList()' -Funktion auf 'dbset.local'. Die einzige Möglichkeit ist die Verwendung von 'var bindingList = new BindingList (context.Orders.Local.ToList());' –