0

我正在使用 .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>">

有没有办法解决?

4

3 回答 3

1

这是 ASP.NET 编辑器的问题。它不是特定于 MVC 的。我认为解决方法非常好,我没有看到具体的缺点。

于 2009-05-01T18:06:24.493 回答
0

不确定我是否误解了您的问题,但您也可以添加:

<body id="site" runat="server"></body>

然后在您的页面上访问它

HtmlControl body = (HtmlControl)Master.FindControl("site");
body.Attributes.Add("class", "LmpDemoRequests");

我希望我理解你的正确。

于 2009-05-01T18:17:06.230 回答
0

尝试将 BodyID 声明为 MasterPage 的属性。在查看页面中设置其值。然后你可以做类似的事情 <html> <body='<%= BodyID %>'> </body </html>

于 2009-05-01T18:22:03.490 回答