2013-02-14 72 views
1

我需要我的ASP.NET MVC應用程序將一些html注入到用特定css類標記的剃鬚刀視圖div元素中。ASP.NET MVC中的自定義HTML調整過濾器

例如,如果在剃刀我有:

<div class="editable"> 
</div> 

我想有檢查所呈現的剃刀視圖和注入一些其他元件C#的邏輯。

生成的HTML將包含一個按鈕:

<div class="editable"> 
    <div class="edit-button"></div> 
</div> 

是否有在ASP.NET MVC一個meachanism,讓我實現這種注射?

回答

2

要修改響應的輸出,請添加response filter。有關使用MVC屬性選擇應用響應過濾器的示例,請參閱asp.net MVC 3/4 equivalent to a response.filter

使用這樣的過濾器,您可以在發送到客戶端之前訪問頁面的內容。要修改HTML,你可以使用HTML agility pack

我想知道你是不是可以在視圖中首先生成正確的標記。

如果你覺得你正在做的事情的冗餘,可以考慮使用

+1

,根據從一個哥們請注意ASP.NET團隊[由於Razor緩衝輸出**的方式,Razor不支持響應過濾器](http://forums.asp.net/t/1634304.aspx#4216340)。您將收到錯誤「不允許過濾」。 – 2015-10-01 07:00:39