中にModelStateエラー辞書のエラーメッセージのように、私は行動の結果にキーと値のペアを追加しました:Iは単位にこれらのようないくつかの面倒なコードを有するアクセスASP.net MVCユニットテスト
[HttpPost, Authorize] public ActionResult ListFacilities(int countryid) { ... ModelState.AddModelError("Error","No facilities reported in this country!"); ... }
テストするには:
public void ShowFailforFacilities() { //bogus data var facilities = controller.ListFacilities(1) as PartialViewResult; Assert.AreSame("No facilities reported in this country!", facilities.ViewData.ModelState["Error"].Errors.FirstOrDefault().ErrorMessage); }
もちろん、エラーが1つしかない場合はいつでも動作します。
私はfacilities.ViewData.ModelState["Error"].Errors.FirstOrDefault().ErrorMessage
が好きではありません。
私はその辞書から値を取得する簡単な方法はありますか?
非常にうまく答えてくれてありがとうございます。 – Seen
良い解決策。ありがとうございました! –
も参照してください。http://stackoverflow.com/questions/17580944/get-all-modelstate-errors-on-view – Alexey