15

我有 Visual Studio 2008 Professional,但在 ASP.Net 通用处理程序页面 (.ashx) 中展开和折叠方法代码块时遇到问题

我原以为你可以在 .aspx 网页后面的代码中做同样的事情。

即使使用 VS 2008 Standard 和 VS 2005 Professional,我在其他机器上也有同样的问题。所有盒子都已完全修补(OS 和 Visual Studio。)

有人对启用此功能有任何建议吗?

4

4 回答 4

22

您可以强制 Visual Studio 忽略您正在使用的代码这一事实,方法是:

工具 | 选项

并打开“文本编辑器|文件扩展名”选项卡。

为扩展“ashx”创建一个新条目,映射到编辑器“Microsoft Visual C#”(或“Microsoft Visual Basic”,根据您的喜好),然后“添加”它。

确定对话框,关闭并重新打开您的 ashx 文件,您的代码块将崩溃到您的内心深处,但 @ 指令会相当难看。

如果您在 .aspx 文件中有服务器端脚本(例如在网站项目中并且您没有“将代码放在单独的文件中”),您也会遇到同样的问题,那么您也无法折叠其中的类块。

于 2008-12-11T15:57:59.223 回答
12

在目录中创建一个类,App_Codeashx 文件只是引用它......像这样:

SomeHandler.ashx:

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

App_Code文件夹中,我SomethingHandler.cs用类创建了文件SomethingHandler

using System;
using System.Web;
// using blabla...

public class SomethingHandler : IHttpHandler
{
        public void ProcessRequest(HttpContext c)
        {
    etc...

现在我可以打开SomethingHandler.cs,用#region collapsing编辑我的C#代码,因为.cs文件是在正确的编辑器中打开的:)

@WebHandler 文档

在 VS 2019 中测试。

于 2011-04-21T07:53:26.580 回答
8

只需选择一段代码,例如:

using System;
using System.Web;
using System.Web.Security;
using System.Collections.Generic;
using System.Configuration;
using System.Data.SqlClient;
using System.Data;

然后按“ Ctrl+M+H ”和 Vualá...大纲正在运行...还有 Intellisense...

要停止大纲按“ Ctrl+M+P ”...

于 2015-06-30T16:58:02.363 回答
6

在第一行前面添加 ///。

像这样:

///<%@ WebHandler Language="C#" Class="FooBar"%>
于 2011-07-26T11:07:11.790 回答