我想使用RAZOR在MVC .NET中創建可重用的ajax控件。MVC中的聲明式AJAX「Controls」
我的例子是一個簡單的ajax文本框,並列出用戶通過在文本框中輸入來過濾列表的位置。在第一次打電話時,我會使用剃刀視圖呈現文本框和列表。在隨後的AJAX調用中,我只想渲染(現在過濾)列表。
想法1:使用@if語句來有條件地呈現代碼。
問題:剃刀似乎不喜歡有條件的HTML。例如,當<div>
標籤沒有被關閉</div>
時出錯。
想法2:使用@section
標記創建我的控件的部分,然後根據需要在同一個文件中調用RenderSection
。
問題:剃刀不允許RenderSection
調用部分在同一頁面
我知道我可以有條件地呈現HTML作爲字符串,但我想採取剃刀標記的易讀性的優勢,並保持與發展協議。