作成するさまざまなフォームが割り当てられているプロジェクトで作業しています。送信ボタンを使用して新しいレコードを追加すると、3回重複または投稿され、その理由がわかりません。単純な関数でjavascriptを使用すると問題を解決できますが、javascriptを使用せず、デフォルトのタイプ="submit"を使用するように言われました。コントローラーにコードを渡し、何が問題なのかを確認できます。前もって感謝します!これは投稿方法です:
[HttpPost]
public ActionResult Edit(int countryId, FmCountry fmCountryToPost)
{
ViewData.Model = fmCountryToPost;
LoadProperty(fmCountryToPost, FmCountry._countryIdProperty, countryId);
if (fmCountryToPost.BrokenRulesCollection.Count > 0)
{
ViewData.ModelState.Clear();
ViewData.ModelState.AddRange(GeneralFunctions.AddObjectBrokenRulesToModelState(fmCountryToPost.BrokenRulesCollection));
Log.Info("Gabim me editimin e qytetit, kontrolli i BrokenRules" + fmCountryToPost.BrokenRulesCollection);
return PartialView();
}
else
{
if (countryId == 0)
{
if (SaveObject(fmCountryToPost, false))
{
Log.Info("Shteti u shtua me sukses. Parametra: countryId=" + countryId);
return RedirectToAction("Index", new { succesMessage = "Shteti u shtua me sukses" });
}
else
{
ViewData.ModelState.Clear();
Log.Info("Ka Ndodhur nje gabim ne shtimin e Shtetit. Parametra: countryId=" + countryId);
ViewData.ModelState.AddModelError("", Resources.Resource.CONTROLLER_ERROR);
return PartialView();
}
}
else
{
if (SaveObject(fmCountryToPost, true))
{
Log.Info("Shteti u editua me sukses. Parametra: countryId=" + countryId);
return RedirectToAction("Index", new { successMessage = "Shteti u modifikua me sukses" });
}
else
{
ViewData.ModelState.Clear();
Log.Info("Ka Ndodhur nje gabim ne editimin e Shtetit. Parametra: countryId=" + countryId);
ViewData.ModelState.AddModelError("", Resources.Resource.CONTROLLER_ERROR);
return PartialView();
}
}
}
}