簡體   English   中英

如何將其重寫為MVC Razor 3?

[英]How do I rewrite this into MVC Razor 3?

它是一個簡單的代碼段,但是在我的mvc剃刀視圖中無法識別.replace:我用@替換了<%=%> ,不確定還需要什么嗎?

 <%=Ajax.ActionLink("[replacethis]", 
        "ToggleEnabled", 
                new { id = Model.ID }, 
                new AjaxOptions { UpdateTargetId = "toggleimage" + Model.ID }).Replace("[replacethis]",
                string.Format("<div id='toggleimage{0}'><img src='/Content/icons/{1}' border='0' alt='toggle'/></div>", 
                Model.ID, Model.Enabled ? "tick.png" : "tick_grey.png"))%>

我不確定這是否理想,但您可以通過以下方式獲得所需的服務:

  1. 插入.ToHtmlString() (即,將MvcHtmlString轉換為原始HTML字符串,以便可以在其上調用Replace
  2. 將整個內容包裝在Html.Raw() (這樣一來,渲染之前就不會對HTML進行編碼)

@Html.Raw(
    Ajax.ActionLink("[replacethis]", 
        "ToggleEnabled", 
        new { id = Model.ID }, 
        new AjaxOptions { UpdateTargetId = "toggleimage" + Model.ID })
   .ToHtmlString()
   .Replace("[replacethis]",
       string.Format("<div id='toggleimage{0}'><img src='/Content/icons/{1}' border='0' alt='toggle'/></div>", 
           Model.ID, Model.Enabled ? "tick.png" : "tick_grey.png")
   )
)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM