Question

I was just assigned to do a CMS using ASP.net 3.5 and MySQL. I am kind of new to ASP.NET development (quite sufficient with C#) and I am wondering what major ASP.NET and general .NET features I am losing when I don't have the option to use Microsoft SQL Server.

I know already from quick Googling that I lose LINQ (and I was really looking forward to using this to build my model layer!), but I am not sure what other handy features I will lose. Since I've been relying on ASP.net tutorials which assume that you use MS SQL Server, I feel a chunk of my ASP.net knowledge just become invalid.

Thanks!

Was it helpful?

Solution

You do not lose LINQ, you lose LINQtoSQL. LINQ itself is more generic as it can be used on anything that implements iQueryable.

You lose the SqlDataSource, not a big deal.

You lose some of the integration the server explorer does for you with sql server, again not a big deal.

As far as im concerned you dont lose anything very important, and you shouldnt be losing any of your .net knowledge. Most examples use sql server as a default but they can easily be changed to use another database.

Also there are a few open source .net CMS packages out there already that use MySql take a look at cuyahoga

OTHER TIPS

You can leverage MySql in a number of ORMs, one of which is NHibernate. For the most part you can treat it as if you were running on SQL Server or Oracle. And with Linq2NHibernate, you can get nice LINQ syntax.

You'd lose the SqlDataSource control, but some would argue that it would actually be a blessing :)

And of course you'd lose Linq2SQL. EntityFramework will have 3rd party adapters MySql, Oracle and a few others soon after release.

As a consequence of losing notification services, you also lose SqlCacheDependency

for linq take a look at this.

has a mysql linq provoder. http://code2code.net/DB_Linq/

Some things that come to mind:

  • asp.net has nice "automatic" user management (authentication) system. I think it only goes with SQL Server, but there might be a way to make it work on other DBs. The tutorials assume SQL Server usually (or the built in file based DB for development)
  • Not related to asp.net, but useful for any project is SQLCLR, which I find a great addition to sql server. Lets you delegate logic you write in the business level (supporting dll or classes) to sql server in the from of a SP, but the SP is written in vb.net/c#
  • Notification services
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top