我有一個非常簡單的頁面。它有幾個devexpress文本框和一個devexpress按鈕。MVC DevExpress - 返回控制器的模型爲空
這些文本框綁定到我的模型中的特定字段。
點擊該按鈕後,它會在我的動作中查看模型後,發現我的動作,我的字段爲空。我最初使用@ Html.TextBoxFors完美地工作。在Devexpress文本框和文本框中添加沒有任何效果。
我已經查看了stackoverflow並找不到解決方案,雖然我發現了一個類似的問題,基本上是相同的,但如果我需要開始賞金,我寧願在我自己的問題上做,至於代碼方面,我的是非常類似於下面的。 :
MVC 3 DevExpress - Model Returned to Controller is Empty
我還審查的DevExpress的網站,發現這一點。 :
http://www.devexpress.com/Support/Center/Example/Details/E2886
上面的本質上是如何正確地做這個演示。我的項目和其他stackoverflow用戶的代碼幾乎完全相同。
我假設其他人有這個問題。我一直試圖讓這個工作幾個星期,現在仍然沒有運氣。任何想法,不勝感激。
代碼
查看
@inherits System.Web.Mvc.WebViewPage<MyModel>
@using DevExpress.Web.ASPxEditors;
@using (Html.BeginForm("MyModelSave", "Home", FormMethod.Post))
{
<div>
@Html.DevExpress().TextBox(settings =>
{
settings.Name = "txtId";
settings.Width = System.Web.UI.WebControls.Unit.Percentage(100);
}).Bind(Model.Id).GetHtml()
</div>
<div>
@Html.DevExpress().TextBox(settings =>
{
settings.Name = "txtName";
settings.Width = System.Web.UI.WebControls.Unit.Percentage(100);
}).Bind(Model.Name).GetHtml()
</div>
<div>
@Html.DevExpress().Button(s =>
{
s.Name = "btnSave";
s.Images.Image.Url = "~/Images/save.png";
s.Text = string.Empty;
s.ToolTip = "Save";
s.UseSubmitBehavior = true;
}).GetHtml()
</div>
}
行動
[HttpPost]
public ActionResult MyModelSave([ModelBinder(typeof(DevExpressEditorsBinder))]MyModel modelTest)
{
if (!ModelState.IsValid)
{
return View();
}
else
{
//Work with model
return View();
}
}
您可以發佈您的代碼?沒有它,很難幫助你解決你的問題。 – nemesv
已添加,但正如我所說的代碼基本上與我提供的鏈接相同。我嘗試了大約45個變化,我在這裏發佈了沒有運氣。 –
您的模型屬性名稱和TextBox設置名稱應匹配。嘗試寫:'settings.Name =「Id」;'和'settings.Name =「Name」;'而不是txtId和txtName – nemesv