无法在Visual Studio中添加.ashx文件

12

我最近下载了适用于Web(express版)的Visual Studio 2012,并正在创建一个简单的ASP .NET空网站。我正在使用Websockets从MySQL数据库检索数据。为此,我想将.ashx文件添加到我的解决方案中,但是当我点击添加新项时,它没有给我添加.ashx文件(处理程序文件)的选项。

编辑 - 所有可添加新文件的选项包括: 文本文件 HTML页面 样式表 XML文件 XML模式 XSLT文件 SQL文件


1
文件类型称为通用处理程序。你不是只看以H开头的东西,而忽略了它吧? - sealz
谢谢回复,但这个选项不在那里。 - arjun
7个回答

28

该项被列为“通用处理程序”。

它也只是一种文件类型,如果您无法添加它,则可以添加一个html页面。在添加时将其命名为Handler.ashx之类的名称。

然后复制并粘贴默认处理程序代码,并重新构建即可。

<%@ WebHandler Language="C#" Class="Handler" %>

using System;
using System.Web;

public class Handler : IHttpHandler {

    public void ProcessRequest (HttpContext context) {
        context.Response.ContentType = "text/plain";
        context.Response.Write("Hello World");
    }

    public bool IsReusable {
        get {
            return false;
        }
    }

}

当您重新构建并关闭/重新打开新的.ashx文件时,Visual Studio将停止向您发出警告并在下划线下方标记东西。

如果它仍然存在问题,则可能在某个地方存在错误。如果您有旧版本的Visual Studio,请尝试创建一个.ashx文件,看看它是否允许您这样做。然后,也许可以进行导入操作?

编辑-Visual Studio命令提示符缺少模板

如果您缺少模板但在模板目录中拥有它们,您可以运行Visual Studio命令提示符并查看 `devenv'。它们可能只需要被安装。

devenv /installvstemplates

10
尝试添加“Web”、“C#”、“泛型处理程序”文件。

3
我无法看到/使用这个选项。 - arjun
1
嗨@arjun, 请尝试添加“Visual c#”->“Web”->“通用处理程序”。 - David Weinberg

3

在 Visual Studio 2015 中:

  • 右键单击项目
  • 选择添加... 新项
  • 在左侧的 Visual C#、Web 树下找到它。
  • 在右侧选择通用处理程序
  • 给它一个名称,比如Handler1.ashx。

这个答案对我起作用了,但是“给它命名”的操作不是很清晰。界面并没有提供命名的选项,只有一个“打开”按钮。 - Be Kind To New Users

2
  1. 打开Visual Studio Installer。
  2. 点击“修改”按钮。
  3. 勾选“ASP.Net和Web开发”复选框。
  4. 在右侧的“安装详细信息”部分,您将看到一个“可选”部分。确保勾选了“.Net Framework项目和项模板”。
  5. 点击“修改”。

1
这是即使在Community 2022中也是正确的答案。 - Evžen Černý

1

根据MSDN的说法,您可以使用以下命令来安装/恢复/组织项目模板

devenv /installvstemplates

您可以使用以下命令来安装/恢复/组织项目模板

devenv /setup

要运行命令,您需要找到包含 devenv.exe 的目录--通常位于以下位置。
C:\Program Files\Microsoft Visual Studio 14.0\Common7\IDE

请注意,由于不同的VS版本,路径可能会有所不同。

1
尝试查找Visual C#模板->Web
它应该在这里->Handler.ashx

0
遇到了一个类似的问题,即没有太多“添加”选项。事实证明,如果您在调试项目时,会有不同的选项可供选择,这是需要记住的一点。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接