views:

28

answers:

3

Hi,

I am building a very small temprorary website that needs a small backing store. I have built this in ASP.NET MVC 2, and wanted to host with DiscountASP - although this isn't essential.

I would like an backing store that will work with ASP.NET MVC 2, VS2010 Express, enabled LINQ (or EF) and work without further charges on a shared host.

From my investigation, SQLCE 3.5 doesn't work in .NET 4 SQLCE 4, is only CTP and doesn't work in VS2010 SQlite doesn't have any .NET 4.0 drivers.

HAve I got this right? Any good tutorials or blogs that show how to get this working step by step?

Thanks, Mark

A: 

I'm not an ASP expert but have you heard about Firebird SQL? Database engine which has client/server or embeded versions, fully featured with transactions etc. and with ADO.NET provider

http://firebirdsql.org/dotnetfirebird/

http://firebirdsql.org/index.php?op=devel&sub=netprovider

dwich
A: 

No, Dont even think about using firebird embedded in ASP.NET.

It is strictly forbidden.

here's a reference on Firbird website tell you to avoid:

Is it possible to use the embedded Firebird in my ASP.NET application?

Yes. But Firebird ADO.NET looks for the fbembed.dll file in the application working directory. For ASP.NET application the working directory is the system folder (e.g. C:\WINDOWS\System32). But it's not without problems link text

On Another page from the same website:

ASP.NET uses a feature that help against poorly written ASP.NET application to block the entire server - it recycles the ASP.NET working process both regularly. By default, IIS6 uses overlapped recycling where there is a new process started before the old is stopped to ensure uninterrupted operation. The problem is that the fbembed.dll exclusively locks the database for the owner process so if you run another process simultaneously the database won't be accessible before the first process stops. You might want to accept this but it really is not an optimal solution.

The solution is to turn off the overlapped recycle (by setting the DisallowOverlappingRotation metabase property to true). However, this might cause outages of your application during recycle.

Conclusion

Don't do tha**t ;-). Really, fbembed.dll **was not built to handle such use. You can make it work but it is just a hack.

mercede75