【发布时间】:2026-01-18 12:00:01
【问题描述】:
我正在制作一个本地 CMS,我可以在其中使用 *.ashx 处理程序创建/编辑/删除帖子、标签、作者和角色。在我为作者和角色添加功能之前,帖子和标签一直运行良好。由于添加了这些,每当我尝试创建/编辑/删除帖子或标签时,我都会收到“'/'应用程序中的服务器错误:找不到资源”错误,例如,请求的 URL:/admin/post.ashx .
我发现这很可能是由于我在 web.config 中为删除和添加处理程序而制作的复制/粘贴拼写错误,其中我两次删除了 Post 和 Tag 处理程序:
<system.webServer>
<handlers>
<remove name="PostHandler"/>
<add name="PostHandler" type="PostHandler" verb ="POST" path="/admin/post.ashx"/>
<remove name="TagHandler"/>
<add name="TagHandler" type="TagHandler" verb ="POST" path="/admin/tag.ashx"/>
<remove name="PostHandler"/>
<add name="AccountHandler" type="AccountHandler" verb ="POST" path="/admin/account.ashx"/>
<remove name="TagHandler"/>
<add name="RoleHandler" type="RoleHandler" verb ="POST" path="/admin/role.ashx"/>
</handlers>
</system.webServer>
处理程序代码现在如下所示:
<system.webServer>
<handlers>
<remove name="PostHandler"/>
<add name="PostHandler" type="PostHandler" verb ="POST" path="/admin/post.ashx"/>
<remove name="TagHandler"/>
<add name="TagHandler" type="TagHandler" verb ="POST" path="/admin/tag.ashx"/>
<remove name="AccountHandler"/>
<add name="AccountHandler" type="AccountHandler" verb ="POST" path="/admin/account.ashx"/>
<remove name="RoleHandler"/>
<add name="RoleHandler" type="RoleHandler" verb ="POST" path="/admin/role.ashx"/>
</handlers>
</system.webServer>
但是,在更正了拼写错误后,我仍然只收到关于帖子和标签的相同错误。我已经尝试在我的浏览器中重建解决方案、重建网站、重新加载 Visual Studio 和清除缓存/浏览历史记录等,但我仍然在创建/编辑/删除帖子和标签时遇到问题。角色和帐户都可以。
我完全被难住了 - 关于我需要做些什么来纠正这个问题有什么想法吗?
【问题讨论】:
-
所以我非常快地阅读了您的问题,并没有发现您已纠正错别字,请包括该处理程序块现在的样子
-
@curtisk 完成了。
-
为什么要在配置文件中注册这些?
.ashx处理程序的整个想法是它们将处理对其特定 url 的任何请求。无需在web.config中提及它们...
标签: c# asp.net razor httphandler ashx