2011-07-21 14 views
1

にあるエンティティをマッピングする際、私は今、実行時に以下のエラーが発生します:EF 4.1:アップグレード後にエラーが4.1にEF 4.0から作業プロジェクトをアップグレードした後、複数のテーブル

地図はかつてよりも多くを呼ばれました'Everybody'と入力し、少なくとも1つの呼び出しでターゲットテーブル名が指定されていませんでした。それはテーブル名がどこかに指定されていないことを示しているため

public EverybodyConfiguration() 
{ 
    Map(e => e.Properties(p => new 
    { 
    p.EverybodyId, 
    p.FirstName, 
    p.LastName, 
    p.Initials, 
    p.CapsId, 
    p.DateModified 
    })).ToTable("Everybody"); 

    Map(e => e.Properties(p => new 
    { 
    p.EverybodyId, 
    p.Status 
    })).ToTable("EverybodyStatus"); 

    Map(e => e.Properties(p => new 
    { 
    p.EverybodyId, 
    p.Email, 
    p.BouncedFlag, 
    p.DoNotContactFlag 
    })).ToTable("EverybodyEmail"); 
} 

エラーメッセージは、紛らわしいですが、あなたはそれが持っているコードで見ることができます:

コードがあります。

テーブルの主キー列名はすべて同じです。

提案がありますか?

答えて

1

ToTableは、エンティティ全体(Mapの後ろにチェーンされ、EntityTypeConfigurationの後ろにチェーンされています)のマッピングです。

public EverybodyConfiguration() 
{ 
    Map(c => 
    { 
     c.Properties(p => new 
     { 
      p.EverybodyId, 
      p.FirstName, 
      p.LastName, 
      p.Initials, 
      p.CapsId, 
      p.DateModified 
     }); 
     c.ToTable("Everybody"); 
    }); 

    Map(c => 
    { 
     c.Properties(p => new 
     { 
      p.EverybodyId, 
      p.Status 
     }); 
     c.ToTable("EverybodyStatus"); 
    }); 

    Map(c => 
    { 
     c.Properties(p => new 
     { 
      p.EverybodyId, 
      p.Email, 
      p.BouncedFlag, 
      p.DoNotContactFlag 
     }); 
     c.ToTable("EverybodyEmail"); 
    }); 
} 
+0

パーフェクト:あなたはMapに渡さActionのパラメータであるEntityMappingConfigurationToTable方法を使用する必要があります。ありがとうございました。それは4.0で働いて奇妙です。 – gxclarke

+0

神はあなたを祝福します! :) – vk5880

関連する問題