Ich frage mich, ist dies ein schlechtes Konzept der Verwendung linq SQL zu aktualisieren Element in meiner Datenbank, was ich tue ist: Ich ändere den Status meiner ausgewählten Artikel (im Gespräch Aufträge) von 0 auf 1, und es sieht wie folgt aus (aktuelle Code):C# linq to sql - Aktualisierung der Datenbanktabelle
Methode I zu Satz bin Aufruf/ Status meine Position ändern:
OrdersController.SetOrderStatusTrue(orderNumber);
Methode Code:
public static void SetOrderStatusTrue(int numberOforder)
{
DataServices.DB.procedure_SetOrderStatus_ToTrue(numberOforder); //procedure which will set status to "1".
DataServices.DB.Refresh(System.Data.Linq.RefreshMode.OverwriteCurrentValues,DataServices.DB.Orders.Where(nmbr => nmbr.OrderNumber == numberOforder)); //is this a bad concept to call refresh ?
}
Also ich frage mich, ist dieses schlechte Konzept zu rufen Refresh
Methode jedes Mal, wenn ich meine Artikelstatus ändern, Vielleicht sollte ich irgendwie anwenden SubmitChanges
Methode, könnte mir jemand sagen, welches Konzept ist besser, dieses Konzept auch funktionieren, aber ich lese auf einige Beiträge, die nicht gute Praxis ist, so wie jedes Mal aktualisieren aufzurufen, so ist das wahr und wie sollte es mit SubmitChanges
Methode aussehen?
Prost
Das lässt mich vermuten, dass DataServices.DB' ist (oder enthält0 einen langlebigen Datenkontext. * Das * ist die schlechte Praxis hier. Wenn Sie kurzlebige Kontexte verwenden, müssten Sie Refresh nicht. –
@Gert Arnold How Könnte ich kurzlebige Kontexte verwenden und was ist das? –
Erstellen Sie Kontext, verwenden Sie es (um Daten zu lesen, Daten zu speichern, was auch immer), dispose es.Typischerweise würden Sie Kontexte in 'using' Anweisungen verwenden .. –