 <p>I made the following changes and things appear to be working as expected.</p> <pre><code>public class EntityResolver&lt;id, entity&gt; : ValueResolver&lt;id, entity&gt; where entity : Entity { protected override entity ResolveCore(id source) { if (source != null) return session.Get&lt;entity&gt;(source, LockMode.None); else return null; } } </code></pre> <p>...</p> <pre><code>cfg.CreateMap&lt;CustomerEditModel, Customer&gt;() .ForMember(d =&gt; d.SalesPerson, o =&gt; o.ResolveUsing&lt;EntityResolver&lt;Guid?, User&gt;&gt;().FromMember(s =&gt; s.SalesPerson)); </code></pre>