gpt4 book ai didi

asp.net-mvc - MVC Razor 3 RC 语法 : Bug or user error?

转载 作者:行者123 更新时间:2023-12-02 11:20:09 25 4
gpt4 key购买 nike

我想这是显而易见的,但在提交错误报告之前,我想知道我没有做错。我使用 ASP.NET MVC3 RC 和 Razor 有这个 View :

<div class="miniProfile">
Joined: @FormatTime(Model.Joined)<br />
@if (!String.IsNullOrWhiteSpace(Model.Location)) {
Location: @Model.Location<br />
}
Posts: @Model.PostCount<br />
@Html.ActionLink("Full Profile", "ViewProfile", new { id = Model.UserID }, new { target = "_blank" }) |
@Html.ActionLink("Send Private Message", "SendNew", "PrivateMessages", new { id = Model.UserID }) |
@Html.ActionLink("Send E-mail", "Send", "Email", new { id = Model.UserID })
@if (!String.IsNullOrWhiteSpace(Model.Web)) {
| <a href="@Model.Web" target="_blank">Visit user Web site: @Model.Web</a>
}
</div>

它在“位置”和最后一个条件中的管道处被阻塞。如果我插入一些 标签,它的工作原理如下:

<div class="miniProfile">
Joined: @FormatTime(Model.Joined)<br />
@if (!String.IsNullOrWhiteSpace(Model.Location)) {
<text>Location: </text>@Model.Location<br />
}
Posts: @Model.PostCount<br />
@Html.ActionLink("Full Profile", "ViewProfile", new { id = Model.UserID }, new { target = "_blank" }) |
@Html.ActionLink("Send Private Message", "SendNew", "PrivateMessages", new { id = Model.UserID }) |
@Html.ActionLink("Send E-mail", "Send", "Email", new { id = Model.UserID })
@if (!String.IsNullOrWhiteSpace(Model.Web)) {
<text>| </text><a href="@Model.Web" target="_blank">Visit user Web site: @Model.Web</a>
}
</div>

尽管经过了一些尝试和错误,我还是无法弄清楚我在做什么是顽皮的。有建议吗?

最佳答案

您的标记应如下所示

<div class="miniProfile">
Joined: @FormatTime(Model.Joined)<br />
@if (!String.IsNullOrWhiteSpace(Model.Location)) {
<text>Location: @Model.Location<br /></text>
}
Posts: @Model.PostCount<br />
@Html.ActionLink("Full Profile", "ViewProfile", new { id = Model.UserID }, new { target = "_blank" }) |
@Html.ActionLink("Send Private Message", "SendNew", "PrivateMessages", new { id = Model.UserID }) |
@Html.ActionLink("Send E-mail", "Send", "Email", new { id = Model.UserID })
@if (!String.IsNullOrWhiteSpace(Model.Web)) {
<text>| <a href="@Model.Web" target="_blank">Visit user Web site: @Model.Web</a></text>
}
</div>

当您有@if时声明中, curl 后面的任何内容仍然被视为“代码”,因此您需要使用 <text> 来打破它。标签或 @:语法。

出现这种行为的原因是,无论如何,您通常都会在条件中嵌套某种标记,在这种情况下,一切都会正常工作:

@if(condition) {
<div>Some content</div>
}

<text>当您不希望条件内容包含在任何标记中时,可以使用标记。

关于asp.net-mvc - MVC Razor 3 RC 语法 : Bug or user error?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4148338/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com