Why are we using .NET instead of something like RoR or (my framework of choice) Grails? Because my buddy knows it inside and out, the tools are great, and we'd like to minimize the number of unknowns in our project. We're pragmatic.
There's plenty of .NET open-source projects out there for things like dependency injection and ORM.