Поскольку вы используете неуниверсальный IList, вам необходимо привести значение:
for (int i = 0; i < results.Count; ++i)
{
Console.WriteLine(((NHibernate.Examples.QuickStart.User)results[i]).EmailAddress); // Not Working
}
Кроме того, вы можете сделать свой IList Общей версией, изменив 1-ю строку на:
System.Collections.IList<NHibernate.Examples.QuickStart.User> results = crit.List();
Обратите внимание, что для этого решения вам придется изменить функцию crit.List (), чтобы вернуть этот тип.