Visual Studio ASP.Net expand and collapse issue in ashx generic handlers

I have Visual Studio 2008 Professional and I am having issues with expanding and collapsing method code blocks in ASP.Net Generic Handler pages (.ashx)

I would have thought you could do the same thing like in the code behind of .aspx web pages.

I have this same issue on other boxes even with VS 2008 Standard and VS 2005 Professional. All boxes have been fully patched (OS and Visual Studio.)

Does anybody have any suggestions as to enabling this feature?

Answers:

Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.

Method 1

You can force Visual Studio to ignore the fact that it’s code in front you’re working with by going to:

Tools | Options

And opening the “Text Editor | File Extensions” tab.

Create a new entry for extension “ashx”, mapped to editor “Microsoft Visual C#” (or “Microsoft Visual Basic”, as your preference takes you), and “Add” it.

OK the dialog, close and re-open your ashx file, and your code blocks willl collapse to your hearts content, but the @ directive will be rather ugly.

You have the same issue if you have serverside script in the .aspx file (for example in a web site project and you don’t “Place code in a seperate file”), then you cannot collapse the class blocks in there either.

Method 2

Create a class in the App_Code directory, which the ashx-file just references… like this:

SomethingHandler.ashx:

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

And in the App_Code folder I’ve created the file SomethingHandler.cs with class SomethingHandler

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

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

Now I can just open SomethingHandler.cs, edit my C# code with #region collapsing, because the .cs file is opened in the right editor 🙂

@ WebHandler docs

Tested in VS 2019.

Method 3

Just select a fragment of code, like:

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

Then Press “Ctrl+M+H” and Vualá… The Outlining Working Now… And Intellisense Too…

To Stop Outlining Press “Ctrl+M+P“…

Method 4

Add /// in front of first line.

Like this:

///<%@ WebHandler Language="C#" Class="FooBar"%>


All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x