2012-07-23 41 views

回答

1

您應該避免這樣做,因爲它可能會對您的網站產生性能影響。過濾器是流,它們是低層次的,並且意味着直接處理響應字節,因此非常適合執行Gzip壓縮等操作。

你應該儘量在理想情況下做大塊過濾操作。如果你真的做不到,你可以寫一個基於MemoryStream的過濾器。請記住,您將創建一個內存緩衝區,因此請確保您的響應時間相對較短。

public class ReadAllIntoMemoryFilter : MemoryStream 
{ 
    private readonly Stream _baseFilter; 

    public ReadAllIntoMemoryFilter(Stream baseFilter) 
    { 
     _baseFilter = baseFilter; 
    } 

    public override void Close() 
    { 
     var bytes = GetBuffer(); 

     // do your work here 

     _baseFilter.Write(bytes, 0, bytes.Length); 
     _baseFilter.Close(); 
     base.Close(); 
    } 
} 
+0

我明白你在說什麼,但我需要完整的html。謝謝 – user960567 2012-07-23 15:21:56

+1

然後它說'在這裏做你的工作',你需要使用'StreamReader'來對付內存流,將字節轉換爲字符串。編輯字符串並反向執行以轉換爲字節。 – 2012-07-23 15:49:31

+0

好的....................... – user960567 2012-07-24 15:05:32