我需要修改腳手架的默認編輯器模板,但我還沒有找到Object.cshtml模板,我在哪裏可以找到默認的剃鬚刀Object.cshtml編輯器模板?我在哪裏可以找到默認的Object.cshtml編輯器模板?
14
A
回答
8
下面的博客文章介紹如何自定義編輯模板:http://bradwilson.typepad.com/blog/2009/10/aspnet-mvc-2-templates-part-4-custom-object-templates.html
基本上,你必須添加一個名爲Views\Shared\EditorTemplates\Object.cshtml
文件,並把所有的邏輯用於顯示對象那裏。
4
當@marcind說他們被編譯進來時,模板本身沒有嵌入,而是寫在代碼中。例如,EditorFor
調用TemplateFor
,這可能會調用TextAreaExtensions.TextArea
或許多其他擴展中的一個生成最終輸出的代碼。這可能是因爲我們可以選擇刪除默認視圖引擎並使用類似nhaml的東西。
模板名稱和創建結果輸出的函數之間的映射可以在System.Web.Mvc.Html.TemplateHelpers
中看到。另見System.Web.Mvc.Html.DefaultEditorTemplates
。
現在存在的最接近的東西是存在於Mvc3Futures中的Webforms模板,它可在aspnet.codeplex.com website上找到。它內部存在一個包含模板的DefaultTemplates \ EditorTemplates文件夾。
這裏的Object.ascx模板:
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
<script runat="server">
bool ShouldShow(ModelMetadata metadata) {
return metadata.ShowForEdit
&& metadata.ModelType != typeof(System.Data.EntityState)
&& !metadata.IsComplexType
&& !ViewData.TemplateInfo.Visited(metadata);
}
</script>
<% if (ViewData.TemplateInfo.TemplateDepth > 1) { %>
<% if (Model == null) { %>
<%= ViewData.ModelMetadata.NullDisplayText %>
<% } else { %>
<%= ViewData.ModelMetadata.SimpleDisplayText %>
<% } %>
<% } else { %>
<% foreach (var prop in ViewData.ModelMetadata.Properties.Where(pm => ShouldShow(pm))) { %>
<% if (prop.HideSurroundingHtml) { %>
<%= Html.Editor(prop.PropertyName) %>
<% } else { %>
<% if (!String.IsNullOrEmpty(Html.Label(prop.PropertyName).ToHtmlString())) { %>
<div class="editor-label"><%= Html.Label(prop.PropertyName) %></div>
<% } %>
<div class="editor-field"><%= Html.Editor(prop.PropertyName) %> <%= Html.ValidationMessage(prop.PropertyName, "*") %></div>
<% } %>
<% } %>
<% } %>
相關問題
- 1. 我在哪裏可以找到dropdownlist的默認剃鬚刀編輯器模板?
- 2. 我在哪裏可以找到並安裝ScalaIDE的模板編輯器?
- 3. 我在哪裏可以找到Symfony的默認控制器
- 4. MVC 3:我在哪裏可以找到DisplayForModel和EditorForModel的默認模板?
- 5. 我在哪裏可以找到Xcode編輯器中的行號?
- 6. 我可以在哪裏找到一個好的SDEF編輯器?
- 7. 我在哪裏可以找到「經典」ASP代碼編輯器?
- 8. Typo3 7.2在哪裏編輯默認模板+後端佈局?
- 9. 我在哪裏可以找到默認VB按鈕的列表?
- 10. 我在哪裏可以找到WPF DataGridRow的默認樣式
- 11. 我在哪裏可以找到默認的android xml drawables?
- 12. 我在哪裏可以找到Theme.AppCompat.Light的默認樣式?
- 13. 我在哪裏可以找到Eclipse JavaServer Faces配置編輯器調色板?
- 14. 我在哪裏可以找到VS 2012的DNN6模塊模板
- 15. - 我在哪裏可以找到默認的調色板,用於繪製包裝
- 16. 我在哪裏可以找到常春藤默認設置值?
- 17. 在哪裏可以找到Xcode編輯器中的列號?
- 18. 我在哪裏可以找到iPhone上的opencv的xcode模板?
- 19. 我在哪裏可以找到適合webapp的主題/模板?
- 20. 我在哪裏可以找到WPF DataGrid的XAML模板?
- 21. 我在哪裏可以找到更多的GWT webappcreator模板?
- 22. 我在哪裏可以找到UITableViewCell圖標的模板?
- 23. Drupal 7 - 我在哪裏可以找到render()函數的模板?
- 24. 我在哪裏可以找到ASP.NET MVC 1.0的項目模板?
- 25. 我在哪裏可以找到Windows窗體的c#模板?
- 26. 在哪裏可以找到拖放HTML佈局編輯器?
- 27. WPF在哪裏可以找到treeview的togglebuton的默認樣式?
- 28. 我在哪裏可以找到Codesmith模板?
- 29. 我在哪裏可以找到Web UI模板?
- 30. ,我可以在哪裏編輯主題?
我在尋找原始模板,這樣我就可以改變什麼,我需要改變,而不是從開始寫吧,反正我想我就使用aspx,並將其轉換爲剃鬚刀。 – ryudice 2011-02-11 17:38:18