首页 > 代码库 > VS2010/VS2013中ashx代码折叠的问题
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代码折叠的问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。