Я считаю, что это невозможно, так как классы и свойства становятся ленивыми (из-за конфигурации - XML или Fluent), когда ISessionFactory собирается, и это происходит только один раз в начале жизненного цикла приложения. Именно здесь создаются фактические прокси-классы, которые используются для обеспечения отложенной загрузки.
Я не знаю, будет ли это полезно для вас, но вы можете получить тип основного прокси-сервера (фактический тип сущности) следующим образом:
Type t = entity.GetType().BaseType;
"сущность" - это ваша сущность, которая выступает в качестве прокси.
Более того, вы можете вместо этого использовать DTO для сериализации с JSON.NET вместо реальных сущностей, используя для этого объект-сопоставитель объектов, такой как AutoMapper.