标题元素中的ASP.NET换行符
发布时间:2020-12-16 03:25:41 所属栏目:asp.Net 来源:网络整理
导读:我正在尝试优化我们网站上的SEO可读性,我遇到的一个问题是ASP.NET屠杀我的MasterPage的标题元素.在我的MasterPage中输入(手动重新格式化以删除由 %%标记引起的换行符): titleasp:ContentPlaceHolder ID="TitleContent" runat="server" / - %=WebsiteSetting
我正在尝试优化我们网站上的SEO可读性,我遇到的一个问题是ASP.NET屠杀我的MasterPage的标题元素.在我的MasterPage中输入(手动重新格式化以删除由< %%>标记引起的换行符):
<title><asp:ContentPlaceHolder ID="TitleContent" runat="server" /> - <%=WebsiteSettings.WebsiteName %></title> 这是我收到的输出: <title> Home - Website Name</title> 正如您所看到的,ASP.NET正在添加前缀和尾随换行符,其中< asp:ContentPlaceHolder />取而代之的是Visual Studio自动格式< asp:Content />以换行开始和结束.显然,在Visual Studio格式化选项中可以防止这种情况,但这并不理想,因为我只想删除TitleContent占位符而不是其余的行为. 有什么方法可以确保我的标题在渲染之前被修剪掉了吗?我正在使用MVC,因此代码隐藏不是一个可接受的选择. 解决方法
以下应允许您不要复制和粘贴代码.
选项1 由于您使用MVC创建HTML Helper,如下所示: namespace [ProjectName].Web.Views { public static class HtmlHelpers { public static MvcHtmlString GetFullPageTitle(this HtmlHelper helper,string PageTitle) { return MvcHtmlString.Create(PageTitle + " - " + WebsiteSettings.WebsiteName) } } } 现在在你的母版页中就是这样 <title><asp:ContentPlaceHolder ID="TitleContent" runat="server" /></title> 然后在你的页面中使用它 <asp:Content ID="PageTitleContent" ContentPlaceHolderID="TitleConent" runat="server"> <%=Html.GetFullPageTitle("Some PageTitle")%> </asp:Content> 选项2 注意:如果您在Action中填充数据,那么您不必将此添加到任何页面. 像这样: public ActionResult myAction() { ViewData["Title"] = "MyActionTitle"; return View() } 然后在您的母版页面中,您只需执行以下操作即可 <title><asp:ContentPlaceHolder ID="TitleContent" runat="server" /><%= ViewData["Title"] + "-" + WebsiteSettings.WebsiteName %></asp:ContentPlaceHolder></title> 关于这一点的好处是,如果你想通过这样做可以覆盖每个页面中标题所说的内容 <asp:Content ID="PageTitleContent" ContentPlaceHolderID="TitleConent" runat="server"> My Override Title </asp:Content> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 如何在ASP.NET MVC4项目之间共享HTML
- Asp.net成员资格表:aspnet_UsersInRoles未出现在Enity Fra
- asp.net-mvc – ASP.NET Web API错误:未找到与请求URI匹配
- asp.net-mvc – 如何从运行时的强类型列表框架视图的Displa
- 进程和线程
- 赋予ASP.NET Web应用程序网络服务帐户读/写权限的危险是什么
- asp.net – 如何从View中获取asp:CheckBox? (__ControlsR
- asp.net – 在本地主机(Chrome和FF)上过期不到1年时未设置c
- asp.net-mvc-3 – 在mvc的下拉列表中使用外键
- asp.net-mvc – 如何在ASP.NET Razor MVC4视图中使用LINQ?
推荐文章
站长推荐
热点阅读