ASP.NET "/"应用程序中的服务器错误 - ashx 处理程序



我正在制作一个本地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和清除缓存/浏览历史记录等,但我在创建/编辑/删除帖子和标签时仍然遇到问题。角色和帐户都很好。

我完全被难住了——我需要做些什么来纠正这个问题,有什么想法吗?

您可以尝试在重建解决方案之前对其进行清理。

如果这也不起作用,请尝试更改键名,如TagHandler的MyTagHandler。

最新更新