2008-09-09 58 views
4

我剛剛被分配使用ASP.net 3.5和MySQL做一個CMS。我對ASP.NET開發很陌生(對於C#來說已經足夠了),並且我不知道當我沒有使用Microsoft SQL Server的選項時,我失去了哪些主要的ASP.NET和常規.NET功能。ASP.NET 3.5沒有Microsoft SQL Server - 我輸了什麼?

我已經從快速谷歌搜索中知道我失去了LINQ(並且我真的很期待用它來構建我的模型層!),但我不確定我會失去哪些其他便利功能。由於我一直依賴於假設你使用MS SQL Server的ASP.net教程,我覺得我的一些ASP.net知識變得無效。

謝謝!

回答

2

你不失去LINQ,你會失去LINQtoSQL。 LINQ本身更通用,因爲它可以用於任何實現iQueryable的任何東西。

你失去了SqlDataSource,沒什麼大不了的。

你失去了一些服務器資源管理器爲你完成的與sql server的集成,再次沒有什麼大不了的。

就我而言,您不會失去任何非常重要的東西,而且您不應該失去任何.net知識。大多數示例使用sql server作爲默認值,但可以很容易地將其更改爲使用其他數據庫。

也有一些開源.NET CMS包在那裏已經使用MySQL需要在cuyahoga

+0

旁註。你不會失去SqlDataSource。 SqlDataSource可以支持任何提供程序,只要它具有MySql所具有的提供程序。我正在使用SqlDataSource和FireBirdSql提供程序來處理我正在執行的項目。 – BinaryMisfit 2008-09-24 08:00:35

7

您可以在許多ORM中使用MySql,其中之一是NHibernate。大多數情況下,您可以像對待SQL Server或Oracle一樣對待它。 Linq2NHibernate,你可以得到很好的LINQ語法。

你會失去SqlDataSource控件,但有些人會認爲它實際上是一種幸福:)

當然,你會失去LINQ2SQL。 EntityFramework將在發佈後不久將有第三方適配器MySql,Oracle和其他一些適配器。

+0

我同意你不會因爲不使用MSSQL而丟失任何東西。 .NET比MSSQL更大。 您仍然擁有ASP.NET的所有AJAX功能和控件。 – 2008-09-09 02:26:21

0

浮現在腦海中有些事情:

  • asp.net具有良好的 「自動」 用戶管理(認證)系統。我認爲它只適用於SQL Server,但可能有辦法使其在其他數據庫上工作。這些教程通常假設SQL Server(或者用於開發的內置基於文件的數據庫)
  • 與asp.net無關,但對任何項目都有用,它是SQLCLR,我發現它是sql server的一個很好的補充。您可以委派您在業務層面寫從SP的(支持DLL或類)在SQL Server的邏輯,但SP是寫在vb.net/c#
  • Notification services
+0

我一直在使用w/mysql工作的asp.net會員系統。你不僅可以編寫自己的類庫來處理任何數據庫的這個問題(或者我有一個可以與大多數數據庫一起工作的通用dll),MySQL已經發布了它自己的dll讓你使用所有的成員函數。 – Greg 2008-09-24 02:20:00

相關問題