我正在使用.NET MVC,在视图页面中,我设置了一个contentplaceholder,其中包含要在母版页上使用的ID,如下所示:
查看页面:
<asp:Content ID="CDomBodyId" ContentPlaceHolderID="DomBodyId" runat="server">LmpDemoRequests</asp:Content>
母版页:
<body id='<asp:ContentPlaceHolder ID="DomBodyId" runat="server"></asp:ContentPlaceHolder>'>
因此,在这种特殊情况下,body标签将在最终的HTML页面上呈现如下:
<body id='LmpDemoRequests'>
我想在body id标签周围加双引号,但是如下所示反转引号会使intellisense无法找到contentplaceholder,在编译时会给我很多警告。
<body id="<asp:ContentPlaceHolder ID='DomBodyId' runat='server'></asp:ContentPlaceHolder>">
有什么方法吗?
答案 0 :(得分:1)
这是ASP.NET编辑器的一个问题。它不是MVC特有的。我认为解决方法非常好,我没有看到特定的缺点。
答案 1 :(得分:0)
不确定我是否误解了您的问题,但您也可以添加:
<body id="site" runat="server"></body>
然后在您的网页上访问
HtmlControl body = (HtmlControl)Master.FindControl("site");
body.Attributes.Add("class", "LmpDemoRequests");
我希望我理解你的正确。
答案 2 :(得分:0)
尝试将BodyID声明为MasterPage的属性。在“查看”页面中设置其值。然后你可以做类似的事情
<html>
<body='<%= BodyID %>'>
</body
</html>