title: If I don't explicitly map a column in code-first EF to an existing DB, will that column still work?
body: <p>I have the following mapping defined:</p>
  
  <pre><code>protected override void OnModelCreating(DbModelBuilder modelBuilder)
          {
              modelBuilder.Entity&lt;InsuranceProvider&gt;()
                  .Map(ins =&gt; ins.Properties(p =&gt; new
                  {
                      PKID_Insuance = p.Id,
                      InsuranceProvider = p.Name,
                      Address1 = p.Address.Address1,
                      Address2 = p.Address.Address2,
                      City = p.Address.City,
                      State = p.Address.State,
                      Zipcode = p.Address.Zipcode,
                  })).ToTable("Insurance");
  
          }
  </code></pre>
  
  <p>The table and object both share properties such as Phone and Fax with the same name.  Do I need to explicitly map those or will the fall into place magically?</p>
  
  <p>Thanks.</p>
  
  <p><strong>Solution:</strong></p>
  
  <p>Sure enough the mapping I proposed did not work.  Once I had it working with the .HasColumnName() method, I swapped that out for the code here and got a "the property expression.... is not valid" error. Bummer.</p>
  
  <p>The scaffold "Create" in MVC 3 did, however, pull both the values I defined in the mapping as well as the ones from the Database with the shared names.  Funny how that works.</p>
  
  <p>It would be nice if they brought that syntax back. It seems so much cleaner for remapping large quantities of columns.</p>