VS2010/VS2013中ashx代码折叠的问题

Posted 风清云淡 初心不改

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VS2010/VS2013中ashx代码折叠的问题相关的知识,希望对你有一定的参考价值。

Tools->Options->TextEditor->File Extension

Add ashx Microsoft Visual C#

Apply

OK

重启VS就可以了,效果如下图所示

代码折叠是可以了,但是有一点不舒服的是,第一行<%@这里会出现红线,不影响程序运行,但是看着不舒服(强迫症犯了)。

 

.ashx文件还有另外一个问题:.ashx文件中的代码不会被编译到.dll文件中。

要解决这个问题,可以把.ashx文件中的cs代码分离出来,也就是把.ashx文件中除了第一行之外的所有代码剪切掉,在App_Code中创建一个class文件,把刚才剪切的代码全部覆盖到新建的class文件中,假设我们创建的class文件的名称是 Test.cs,修改一下.ashx文件的第一行代码,加上 CodeBehind="Test.cs",.ashx文件的所有代码如下:

<%@ WebHandler Language="C#" class="Handler" CodeBehind="Test.cs" %>

Test.cs的所有代码如下:

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;
        }
    }

}

这样,代码折叠解决了,发布WEB程序的时候,.ashx相关的cs代码也会被编译到App_Code.dll文件中。

只是创建文件的时候需要手动去修改一下,稍微有点麻烦。

 

以上是关于VS2010/VS2013中ashx代码折叠的问题的主要内容,如果未能解决你的问题,请参考以下文章

如何使用VS在SharePont 2013中插入ashx文件

visual studio vs2010 vs2013 显示详细调试信息方法;vs debug 出错怎么办,你需要的不是答案,是方法。

如何重置 VisualStudio(VS2010、VS2012)调试器缓存?

vs2013cs页面的代码太长,除了方法,没有折叠,如何处理

无法在 Visual Studio 2013 中添加数据库文件。错误 50

Qt:在 Windows、Visual Studio 2010 (VS2010) 上编译 Qt 5.0.1 时出错