Archives
-
So I Created Another Utils Library
Thought it was time I start my own Utils library (why not everyone else seems to have one), I have things like a UnitOfWork implementation, base Repository class, and plan to add more things as I go.
This is still a work in progress and I would appreciate any feedback out there, in the meantime I will continue my work on it.
You can find the project on GitHub @ http://github.com/stefansedich/YetAnotherUtilsLib
Cheers
Stefan -
In Memory SQLite + Unit Test + FluentNHibernate
UPDATE:
I have forked fluent NH here: http://github.com/stefansedich/fluent-nhibernate, and added a change so we can just use:
.Database(SQLiteConfiguration.Standard.InMemory().ShowSql())
By default the InMemory() helper will now add the pooling support, I sent a push request, so hopefully this hits trunk. Not sure if I was being silly but I do not see a need where you would not pool in memory SQLite anyway.
----------------------------------------------------------
Just playing around with FNH for the first time, getting my unit tests running proved to be a pain, did a Google and had no luck finding a solution to my problem.
A quick play using the fluent config I found a way to get it working, my full session factory setup is below:
public ISessionFactory GetSessionFactory() { return Fluently.Configure() .Database(SQLiteConfiguration.Standard.InMemory() .ConnectionString("Data Source=:memory:;Version=3;New=True;Pooling=True;Max Pool Size=1;")) .Mappings(m => m.FluentMappings.AddFromAssembly(typeof(CustomerRepository).Assembly)) .ExposeConfiguration(config => new SchemaExport(config).Create(true, true)) .BuildSessionFactory(); }
The key was to set the Pooling=True;Max PoolSize=1; in my config, looking at fluent NH the .InMemory() shortcut seems to not set these:
public SQLiteConfiguration InMemory() { Raw("connection.release_mode", "on_close"); return ConnectionString(c => c .Is("Data Source=:memory:;Version=3;New=True;")); }
Guess it would be great if it did, but for the time being I will just do it manually.
Cheers
Stefan -
NHibernate Session Management using FluentNhibernate and Castle Windsor
Time for my first post in a while, thought I would post on session management using Castle Windsor.
I found this good post, http://blog.stevehorn.cc/2009/03/fluent-nhibernate-configured-via.html and I have basically converted it to use Castle for IoC instead.
The Windsor config that will work is below:
var container = new WindsorContainer();
container.AddFacility(); // This adds support to be able to use the UsingFactoryMethod.
container.Register(Component.For().ImplementedBy ().LifeStyle.Singleton);
container.Register(Component.For().UsingFactoryMethod(x => x.Resolve () .GetSessionFactory() .OpenSession()).LifeStyle.PerWebRequest);
The only other addition that is needed for Windsor is to add the PerWebRequest module to your Web.config file in the httpModules section:
<add name="PerRequestLifestyle" type="Castle.MicroKernel.Lifestyle.PerWebRequestLifestyleModule, Castle.MicroKernel" />
And you are done, nice and simple NHibernate Session management using a Windsor container.
Cheers Stefan -
Mammoth VPS launches Backups, DNS Management and more!!!
Yesterday we launched a bunch of new features over at MammothVPS,
- All VPS' now have an on-site, off-server backup facility available to them. By default all customers will have 1 free weekly backup made available to them, and should you wish to you can purchase more slots which are available in daily, weekly and monthly schedules.
- DNS hosting has been made available and will be free for all customers. You can find the new interface in your mPanel.
- A cleanup of the menu system has been done to make it easier to navigate around both the site and mPanel.
- You will find new sections on site, we now have more information about our services and have included things like a Knowledge Base, which will provide information on howto setup various applications on your VPS.
- Added the ability to change the kernel your VPS is running on.
So head on over to MammothVPS and check it out. -
Mammoth VPS Signup Video
We have posted a video showing the process involved in signing up for a VPS at check it out below.
As a special offer if you use the voucher code 'VIDEO' you can signup and receive 10% off for the first 12 months of your service.
Cheers Stefan