最初にEF5コードを使用しており、2つの関連エンティティApplicationPermissionとApplicationがあります。
public class ApplicationPermission
{
public virtual Application Application { get; set; }
public int Id { get; set; }
}
public class Application
{
public string Name { get; set; }
public int Id { get; set; }
}
ApplicationPermissionの次のマッピングを使用します。
HasKey(x => x.Id);
HasRequired(x => x.Application).WithMany().Map(m => m.MapKey("ApplicationId")).WillCascadeOnDelete(false);
およびアプリケーションの場合:
HasKey(x => x.Id);
ApplicationPermissionを削除するには、以下のコードを使用します。
ApplicationPermission entity = new ApplicationPermission { Id = id };
DbContext.Set<ApplicationPermission>().Attach(entity);
DbContext.Set<ApplicationPermission>().Remove(entity);
DbContext.SaveChanges();
しかし、SaveChangesメソッドでエラーが発生しました:
'CodeFirstContainer.ApplicationPermissions'のエンティティは、'ApplicationPermission_Application'関係に参加します。0個の関連する「ApplicationPermission_Application_Target」が見つかりました。1'ApplicationPermission_Application_Target'が必要です。
アプリケーションをdbcontextにロードせずにApplicationPermissionを削除するにはどうすればよいですか?