У меня есть следующий код внутри Ут ASP.NET MVC зрения бритвы: _Ajax.BeginForm не вызова метода действия
@using (Ajax.BeginForm("ManageCustomAsset", "Customer", new AjaxOptions
{
InsertionMode = InsertionMode.InsertBefore,
UpdateTargetId = "customassettableBody",
LoadingElementId = "progress",
HttpMethod= "POST",
OnSuccess="submitform"
}))
{
@Html.ValidationSummary(true)
@Html.AntiForgeryToken()
<div>
<span class="f"> @Html.DisplayNameFor(model=>model.CustomAsset.CustomerName) </span>
@Html.TextBoxFor(model => model.CustomAsset.CustomerName, new { disabled = "disabled" })
@Html.ValidationMessageFor(model => model.CustomAsset.CustomerName)
@Html.HiddenFor(a => a.CustomAsset.CustomerName)
</div>
<div>
<span class="f"> @Html.DisplayNameFor(model=>model.CustomAsset.CustomAssetType.Name) </span>
@Html.DropDownListFor(model=>model.CustomAsset.CustomTypeID, ((IEnumerable<TMS.Models.CustomAssetType>)ViewBag.CustomTypes).Select(option => new SelectListItem {
Text = (option == null ? "None" : option.Name),
Value = option.ID.ToString(),
Selected = (Model != null) && (Model.CustomAsset != null) && (option.ID == Model.CustomAsset.CustomTypeID)
}), "Choose...") <i class=" icon icon-blue icon-star-on "></i>
@Html.ValidationMessageFor(model=>model.CustomAsset.CustomTypeID)
</div>
<div>
<span class="f"> @Html.DisplayNameFor(model=>model.CustomAsset.Description) </span>
@Html.TextBoxFor(model => model.CustomAsset.Description)
@Html.ValidationMessageFor(model => model.CustomAsset.Description)
</div>
<input type="submit" value="Save" class="btn btn-primary"/>
}
, но когда я нажимаю на форме она не достигнет следующего способа действия, то, что происходит си си, что загрузка изображения будет отображаться, а затем ничего не будет, и я не буду даже получить ошибку ???: -
[HttpPost]
[ValidateAntiForgeryToken]
[CheckUserPermissions(Action = "Edit", Model = "CustomAsset")]
public ActionResult ManageCustomAsset(CustomerCustomAssetJoin ccaj)
{
if (ModelState.IsValid)
{
try
{
string ADusername = User.Identity.Name.Substring(User.Identity.Name.IndexOf("\\") + 1);
repository.InsertOrUpdateCustomerCustomAsset(ccaj.CustomAsset, ADusername);
// repository.Save();
return PartialView("_customerCustomAsset", ccaj);
}
catch (Exception ex)
{
//ModelState.AddModelError(string.Empty, "Error occurred: " + ex.InnerException.Message);
return Json(new { IsSuccess = "False", description = ex.InnerException.InnerException.Message.ToString() }, JsonRequestBehavior.AllowGet);
}
}
return View(ccaj);
}
I U ncommented, но все тот же. Я действительно прокомментирую это, поскольку я думал, что это может вызвать проблему. Но, к сожалению, все же я получаю такое же поведение ... если проблема решена этим, по крайней мере, вызов достигнет метода действия, а затем произойдет ошибка, но в моем случае форма ajax.begin не дойдет до метода действия. Я вставил точку останова, но она не дошла до нее .. –
Я обновил свой код .. –