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文件中。

只是創建文件的時候需要手動去修改一下,稍微有點麻煩。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM