0
如何阻止ViewBag中的值綁定到MVC中的控件?該視圖不是強類型的。模型綁定中使用的ViewBag
我使用ViewBag將數據表傳遞給視圖。這個數據表被作爲值傳遞給使用HtmlHelper
上的擴展方法構建的自定義控件。
視圖有一些依賴於EntityID的邏輯,所以我使用ViewBag將EntityID傳遞給視圖。
控件構建了一個名爲'EntityID'的隱藏字段,而不是使用我從數據集傳遞給html助手的值,而是綁定到ViewBag中的值。
return htmlHelper.Hidden(name, value, attributes);
我如何獲得HtmlHelper
來使用我的值而不是使用ViewBag中的內容?
當渲染視圖時會發生這種情況。
通過Ajax GET請求對View的控制器進行調用,並將返回的視圖html附加到div
。
GET請求將對象發送到操作方法。該對象有一個名爲ENTITYID
那就是'HtmHelper'methods的工作方式 - 他們首先檢查'ModelState'中的值,如果找不到,則檢查'ViewData',最後檢查model屬性。 –
@StephenMuecke我可以建立一個隱藏的輸入控制字符串,但我想知道是否有辦法阻止'HtmlHelper'在模型綁定過程中使用ViewBag。 – Developer
您可以提供更多的上下文 - 這是在視圖第一次呈現時發生,還是僅在您提交後返回視圖,或者該方法的參數與名稱匹配時纔會發生。 –