Является ли session.Get (1) действительно возвращением действительного человека. Я не думаю, что это действительный звонок. Не должно ли это быть:
session.Get<Person>(1)
или
session.Get(typeof(Person), 1)
Вы, вероятно, должны дважды проверить, чтобы убедиться, что то, что вы получаете, является действительным. Я думаю, это не так.