WebResource.axd404
WebResource.axd 404
我在 ASP.NET Webform 项目中使用 WebResource 加载 .css 文件时遇到问题。该项目指的是 sharedProject 文件夹。项目中的每个页面都继承自 sharedProject 中的公共基页。现在我在 sharedProject 中创建一个 CommonStyle.css 并尝试将其注入到基页中。
奇怪的是,带有 404 错误消息的 WebResource 的类型为 "text/html"。在我将 PageBase.cs 移动到 MyProject 文件夹后,WebResource 可以成功加载。我现在很沮丧和困惑。请帮忙。
目录结构如下:
- 共享项目
- CommonStyle.css
- PageBase.cs
- 我的项目
- 网页1
- 网页2
- 网页3
PageBase.cs 中的代码,OnInit 函数:
protected override void OnInit(EventArgs e)
{
HyperLink hlHelpFile = new HyperLink();
ClientScriptManager cs = Page.ClientScript;
Type rsType = typeof(PageBase);
hlHelpFile.NavigateUrl = cs.GetWebResourceUrl(rsType, "Web.CommonStyle.css");
this.Page.Header.Controls.Add(hlHelpFile);
HtmlLink css = new HtmlLink();
css.Href = hlHelpFile.NavigateUrl;
css.Attributes.Add("rel","stylesheet");
css.Attributes.Add("type","text/css");
css.Attributes.Add("media","all");
this.Page.Header.Controls.Add(css);
base.OnInit(e);
}
我还在AssemblyInfo.cs中添加了webResourceAttribute如下:
[assembly: WebResourceAttribute("SharedProject.CommonStyle.css", "text/css")]
我挣扎了那么久,但终于想通了。问题是我把装配信息放在了错误的地方。 WebResource 程序集应始终与基页放在同一项目中 class(共享项目)。
我知道这是一个愚蠢的错误。我会把它放在这里,以防其他人遇到同样的问题。
确保最大查询字符串和最大 url 大小足够大;
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="52428800" maxUrl="760" maxQueryString="390" />
<!--50MB-->
<verbs>
<add verb="TRACE" allowed="false" />
<add verb="OPTIONS" allowed="false" />
</verbs>
</requestFiltering>
<isapiCgiRestriction notListedIsapisAllowed="false" />
</security>
我在 ASP.NET Webform 项目中使用 WebResource 加载 .css 文件时遇到问题。该项目指的是 sharedProject 文件夹。项目中的每个页面都继承自 sharedProject 中的公共基页。现在我在 sharedProject 中创建一个 CommonStyle.css 并尝试将其注入到基页中。
奇怪的是,带有 404 错误消息的 WebResource 的类型为 "text/html"。在我将 PageBase.cs 移动到 MyProject 文件夹后,WebResource 可以成功加载。我现在很沮丧和困惑。请帮忙。
目录结构如下:
- 共享项目
- CommonStyle.css
- PageBase.cs
- 我的项目
- 网页1
- 网页2
- 网页3
PageBase.cs 中的代码,OnInit 函数:
protected override void OnInit(EventArgs e)
{
HyperLink hlHelpFile = new HyperLink();
ClientScriptManager cs = Page.ClientScript;
Type rsType = typeof(PageBase);
hlHelpFile.NavigateUrl = cs.GetWebResourceUrl(rsType, "Web.CommonStyle.css");
this.Page.Header.Controls.Add(hlHelpFile);
HtmlLink css = new HtmlLink();
css.Href = hlHelpFile.NavigateUrl;
css.Attributes.Add("rel","stylesheet");
css.Attributes.Add("type","text/css");
css.Attributes.Add("media","all");
this.Page.Header.Controls.Add(css);
base.OnInit(e);
}
我还在AssemblyInfo.cs中添加了webResourceAttribute如下:
[assembly: WebResourceAttribute("SharedProject.CommonStyle.css", "text/css")]
我挣扎了那么久,但终于想通了。问题是我把装配信息放在了错误的地方。 WebResource 程序集应始终与基页放在同一项目中 class(共享项目)。
我知道这是一个愚蠢的错误。我会把它放在这里,以防其他人遇到同样的问题。
确保最大查询字符串和最大 url 大小足够大;
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="52428800" maxUrl="760" maxQueryString="390" />
<!--50MB-->
<verbs>
<add verb="TRACE" allowed="false" />
<add verb="OPTIONS" allowed="false" />
</verbs>
</requestFiltering>
<isapiCgiRestriction notListedIsapisAllowed="false" />
</security>