ASP.NET は初めてですが、Qt プラットフォームでシステムを開発しました。別のデータベースからデータを取得し、アプリケーションで使用してデータベースに保存したいと考えています。MVC3 アプローチを通じて ASP.NET と C# を使用しています。
私はそれを試しました:
次のように、web.config ファイルに異なるデータベースへの接続文字列を設定します。
<add name="DBSContext"
connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\DBS_Example_DB.mdf;Integrated Security=True"
providerName="System.Data.SqlClient"/>
<add name="VIPSContext"
connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\VIPS.mdf;Integrated Security=True"
providerName="System.Data.SqlClient"/>
次のように、コントローラーでこれらの 2 つのデータベースに接続します。
private DBSContext db = new DBSContext();
private VIPSContext vipsdb = new VIPSContext();
コントローラーからビューにデータを渡し[成功]、getおよびpostメソッドを介してDBに保存[失敗]
// GET: /Create
public ActionResult Create()
{
//dropdown
ViewBag.CollectorID =new SelectList(db.Collectors, "CollectorID", "FirstName");
//dropdown
ViewBag.TaxpayerID =new SelectList(vipsdb.Taxpayers, "TaxpayerID", "FirstName");
return View();
}
// POST: /Create
public ActionResult Create(Debt_Case debt_case)
{
if (ModelState.IsValid)
{
db.Debt_Cases.Add(debt_case);
db.SaveChanges(); //this is where the error is
return RedirectToAction("Index");
}
return View(debt_case);
}
データベースへの変更を保存しているときにエラーが発生します。
私のモデルは次のとおりです。
public class Debt_Case
{
public string Debt_CaseID { get; set; }
public string TaxpayerID { get; set; }
public string CollectorID { get; set; }
public string TotalPayment { get; set; }
public virtual Collector Collectors { get; set; }
public virtual Taxpayer Taxpayers { get; set; }
}
}
注:ナビゲーション プロパティ、つまり Collectors と Taxpayers は null です。
このエラーが発生しています:
エントリの更新中にエラーが発生しました。詳細については、内部例外を参照してください。
このエラーを解決する方法を教えてください。