Performance problems with TOP and user defined functions in views
Why don't you call a stored procedure via NHibernate instead of asking it to query the view?  That would allow you to write your own query and tune as needed....

I don't know NHibernate very well but this blog post looks like a reasonable resource.  In case that link dies here are the basic steps:


Write your stored procedure to select the data in the most efficient manner.
Write a class that represents the data you're selecting (a DTO would be perfect).
Write a NHibernate mapping that tells it how to associate the fields
Specify the name of the stored procedure to use and any parameters when you query the database via NHibernate.


It might be a good idea to check out this article on StackOverflow related to tuning performance when using NHibernate.