Querying Over Multiple Child Collections With NHibernate

Typically with NHibernate, I’m always querying over one table and eager fetching it’s child collections. I’m also only performing WHERE conditions on that initial table I am querying over.

The other day though, I needed to solve a problem where I was adding WHERE conditions to the child collections. Now in SQL, this is quite easy but in NHibernate, it took me a while to figure out how to do this efficiently.

Continue reading

Mask a Phone Number Field but Only Save the Numbers using jQuery

Masking a phone number field is relatively easy by utilizing one of the many jQuery masking plug-ins. It will turn your input field from this: 5554449999 into this: (555) 444-9999 which looks much nicer but at the same time that becomes the text that will be sent when you post back the form to the server.

Continue reading

Restrict Access to an MVC Action or Controller by IP Address using a Custom Action Filter

Scenario: You want to lock down access to a particular action or entire controller in your MVC application via the users IP address.  This can be particularly useful if you would like to restrict the Admin portion of your website to just your company’s IP address range.

There are several ways to accomplish this task. IIS allows you to restrict by IP Address but what if you want to do it programmatically…

Continue reading

How to Disable IE8 Compatibility Button

I was recently working on an ASP.NET MVC3 website and had users reporting that the site was crashing when they clicked a certain link. When I attempted to replicate the problem using the same web browser as the user, Internet Explorer 8, it seemed to work for me. After some back and forth, I discovered the problem was that the user had Compatibility Mode enabled for the website.

Continue reading

Explicitly Specifying the Identity Column Value using Fluent NHibernate

I recently ran into a situation where I was saving to a database table that did not have an auto-incrementing identity column. I didn’t realize that at the time when I was setting up my NHibernate mapping and it caused me a headache for about half an hour attempting to figure out what was causing the problem.

Continue reading