Frage

Ich wurde gerade damit beauftragt, ein CMS mit ASP.net 3.5 und MySQL zu erstellen.Ich bin ein bisschen neu in der ASP.NET-Entwicklung (mit C# völlig ausreichend) und Ich frage mich, welche wichtigen ASP.NET- und allgemeinen .NET-Funktionen ich verliere, wenn ich nicht die Möglichkeit habe, Microsoft SQL Server zu verwenden.

Durch schnelles Googeln weiß ich bereits, dass ich LINQ verliere (und ich habe mich wirklich darauf gefreut, damit meine Modellebene zu erstellen!), aber ich bin mir nicht sicher, welche anderen praktischen Funktionen ich verlieren werde.Da ich mich auf ASP.net-Tutorials verlassen habe, die davon ausgehen, dass Sie MS SQL Server verwenden, habe ich das Gefühl, dass ein Teil meines ASP.net-Wissens einfach ungültig geworden ist.

Danke!

War es hilfreich?

Lösung

Sie verlieren nicht LINQ, Sie verlieren LINQtoSQL.LINQ selbst ist allgemeiner, da es für alles verwendet werden kann, das iQueryable implementiert.

Sie verlieren die SqlDataSource, keine große Sache.

Sie verlieren einen Teil der Integration, die der Server-Explorer für Sie mit SQL Server übernimmt, was wiederum keine große Sache ist.

Meiner Meinung nach verlieren Sie nichts sehr Wichtiges, und Sie sollten auch nichts von Ihrem .net-Wissen verlieren.Die meisten Beispiele verwenden standardmäßig SQL Server, können aber leicht geändert werden, um eine andere Datenbank zu verwenden.

Außerdem gibt es bereits einige Open-Source-.net-CMS-Pakete, die MySql verwenden. Schauen Sie sich das an cuyahoga

Andere Tipps

Sie können MySql in einer Reihe von ORMs nutzen, darunter NHibernate.Im Großen und Ganzen können Sie es so behandeln, als würden Sie es auf SQL Server oder Oracle ausführen.Und mit Linq2NHibernate können Sie eine schöne LINQ-Syntax erhalten.

Sie würden das SqlDataSource-Steuerelement verlieren, aber einige würden argumentieren, dass es tatsächlich ein Segen wäre :)

Und natürlich würden Sie Linq2SQL verlieren.EntityFramework wird bald nach der Veröffentlichung über Drittanbieter-Adapter MySql, Oracle und einige andere verfügen.

Als Folge des Verlusts von Benachrichtigungsdiensten verlieren auch Sie SqlCacheDependency

Für Linq schauen Sie sich das an.

hat einen MySQL-Linq-Provoder.http://code2code.net/DB_Linq/

Einige Dinge, die mir in den Sinn kommen:

  • asp.net verfügt über ein schönes „automatisches“ Benutzerverwaltungssystem (Authentifizierung).Ich denke, es funktioniert nur mit SQL Server, aber es könnte eine Möglichkeit geben, es auf anderen Datenbanken zum Laufen zu bringen.In den Tutorials wird normalerweise SQL Server vorausgesetzt (oder die integrierte dateibasierte Datenbank für die Entwicklung).
  • Nicht mit asp.net verwandt, aber für jedes Projekt nützlich ist SQLCLR, das meiner Meinung nach eine großartige Ergänzung zu SQL Server ist.Ermöglicht das Delegieren der Logik, die Sie auf Geschäftsebene schreiben (unterstützende DLLs oder Klassen), an einen SQL-Server im Format eines SP, der SP ist jedoch in vb.net/c# geschrieben.
  • Benachrichtigungsdienste
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top