DbContext
EF コードを使用する まず、クラス名をデータベースの接続文字列name
属性と一致させて連携させる必要があることがわかりました。ただし、次のコードは機能しません。
public class UserDbContext : DbContext
{
public DbSet<Users> Users { get; set; }
}
この接続文字列とともに:
<add name="UserDbContext"
connectionString="Data Source=(LocalDB)\v11.0;
AttachDbFilename=|DataDirectory|\Users.mdf;
Integrated Security=True"
providerName="System.Data.SqlClient" />
しかし、代わりに、DbContext
名前とともにモデルを直接指すこの接続文字列を使用する必要があります
<add name="NextFlicksMVC4.Models.userAccount.Users+UserDbContext"
connectionString="Data Source=(LocalDB)\v11.0;
AttachDbFilename=|DataDirectory|\Users.mdf;
Integrated Security=True"
providerName="System.Data.SqlClient" />
意図したとおりに動作し、App_Data フォルダーの LocalDB に接続します。
DbContext クラスのフルパスを指定した場合にのみ機能する理由を誰かに説明できますか?