Ich habe nicht verstanden, wie serverseitige Paginierung mit MySql und Datatable in einem C# MVC funktioniert. eine kontrollierte in C# I erstellt, in dem ich die Verbindung mit einer MySQL-Datenbank eingerichtet (Ich folgte diesem Beispiel, um das zu tun):Serverseitige Paginierung mit MVC C# und MySql
public ActionResult connectDB()
{
const string DB_CONN_STR = "Server=MyServer;Port=MyPort;Uid=MyUid;Database=MyDB;";
MySqlConnection cn = new MySqlConnection(DB_CONN_STR);
try
{
string sqlCmd = "select * from t_documento";
MySqlDataAdapter adr = new MySqlDataAdapter(sqlCmd, cn);
adr.SelectCommand.CommandType = CommandType.Text;
DataTable dt = new DataTable();
adr.Fill(dt); //opens and closes the DB connection automatically !! (fetches from pool)
return Content(JsonConvert.SerializeObject(dt).ToString());
}
catch (Exception ex)
{
Console.WriteLine("{oops - {0}", ex.Message);
return Content(ex.ToString());
}
finally
{
cn.Dispose(); // return connection to pool
}
}
jedoch auf diese Weise, Ich nehme alle gespeicherten Datensätze in diese Tabelle, aber ich möchte die Datatable füllen (die Inizialisierung meiner Datentabelle ist in einer cshtml Seite) durch die Implementierung der Seitenumbruch. Ich habe viele Artikel gelesen, aber ich habe kein klares Beispiel mit einer MySql DB gefunden. Kann mir bitte jemand helfen? Vielen Dank!
Sie können diese unter Verwendung von (gespeichert) Verfahren tun. Fügen Sie Ihrem Controller einfach eine Seitennummer hinzu und übergeben Sie diese an das Modell und die Prozedur. Hier sind einige gute Referenzen für die Paginierung in SQL Server: [Eine effizientere Methode für die Paging durch große Ergebnismengen] (http://www.4guysfromrolla.com/webtech/042606-1.shtml) und [Zeilenversatz in SQL Server] (https://stackoverflow.com/questions/187998/row-offset-in-sql-server). Ich bin sicher, MySql DB wird sehr ähnlich sein. – Zerubbabel