title: fluent nhibernate could not resolve property when trying to access property with backing field
body: <p>I have a class like the following: (SpecialFoo Implement IFoo)</p>
  
  <pre><code>private SpecialFoo _foo { get; set; }
  public virtual SpecialFoo SpecialFoo 
  {
    get { return _foo; }
    protected internal set { _foo = value; }
  }
  public virtual IFoo Foo
  { 
    get { return _foo; }
  }
  </code></pre>
  
  <p>Mapping:</p>
  
  <pre><code>References(x =&gt; x.SpecialFoo)
      .Column("Special_Foo_Id")
      .Not.Insert()
      .Not.Update();
  </code></pre>
  
  <p>But when I try to query against the interace it comes back with fluent nhibernate could not resolve property. If I change it to use the SpecialFoo it works.</p>
  
  <pre><code>//Doesn't Work
  return (from s in _session.Linq&lt;SpecialFoo&gt;()
            where s.Foo.ID == id
            select s).ToList();
  
  //Works
  return (from s in _session.Linq&lt;SpecialFoo&gt;()
            where s.SpecialFoo.ID == id
            select s).ToList();
  </code></pre>
  
  <p>Can anyone offer clues as to how to fix this and why this is happening? I read a bunch of different questions on Stackoverflow that were related to this, but unfortunately none of the solutions provided seemed to be applicable to what my particular case was.</p>