Ich habe nie zuvor eine asynchrone Methode in meinem Leben programmiert. Ich habe gerade gelesen die folgende Website: https://msdn.microsoft.com/en-us/library/mt674882.aspxRückansicht während Prozessdaten
Aber es ist für mich nicht ganz klar ...
Ich möchte ein functie eine Ansicht zurückzukehren, während der Datenverarbeitung. Ohne dass der Benutzer auf die zu verarbeitenden Daten warten muss, bevor die Ansicht geladen wird. So geben Sie die Ansicht zurück und bearbeiten Sie die Daten im Hintergrund ....
Ist also der folgende Pseudocode mit Async-Programmierung möglich?
public async actionresult page(object obj)
{
SQLUploadToDatabase(obj);
string x = DoOtherWork();
return View(x);
}
Public void SQLUploadToDatabase(object obj)
{
conn = SQL.openconnection;
conn.inserttotable(obj);
}
Dies hängt nicht mit async/await zusammen. Auch ist es wahrscheinlich keine gute Übung, es sei denn, Sie interessieren sich nicht für das Ergebnis (dh was passiert, wenn Ihre Aussage fehlschlägt oder wenn der iis App-Pool neu gestartet wird). Es gibt viele SO q/a's über das Auslagern von lang laufenden Prozessen auf asp.net/mvc, ich schlage vor, dass Sie danach suchen. – Igor
Ja, nein, das ist nicht was asynchrone Controller-Methoden tun. Sie müssten einen Hintergrundprozess starten, der den Upload durchführt und sofort etwas an den Client zurückgibt. Tonnen von verschiedenen Möglichkeiten, Ihre Hintergrundprozesse auszuführen. Es wird ein Problem, den Benutzer über das Ergebnis zu informieren. Viele Möglichkeiten, dies auch zu erreichen. Viele. Viele. – Will
Beim Lesen von Nachrichten oben denke ich, dass ich nach der falschen Kombination von Wörtern gesucht habe. Ich werde sehen, was ich finde, wenn ich "lang laufenden Prozesse auslagern" als Suchschlüssel verwende. Danke für deine Antworten. – DutchFlow