2008-09-15 26 views
6

Web sitemdeki bazı uygulamaları, sunucudaki çerçeveyi yükleyerek ve web uygulamalarımı acrodingly kurarak ve her şey yolunda giderken ASP.NET 3.5'e geçtim.Response.Clear in ASP.NET 3.5

Response.Clear(); 
// Output some stuff 
Response.End(); 

Ama 2.0 yaptığımız zaman bu şimdi 3.5'de çalışmıyor: Bazı sayfalarda

, böyle koduyla yanıt tamponunun geçerli içeriğini temizlemek istiyor. Ayrıca yanıt arabelleğini yanlış olarak ayarlamayı denedim, ancak bu da işe yaramadı.

Niçin çalışmadığını veya çalışıp çalışmadığını bana bilen var mı?

cevap

12

Codebehind'de değil, sayfanın Sayfa Yönergesi'nde Buffer = "True" ayarlamayı deneyin.

Sadece bir Web Sitesi projesi üzerinde VS2008 bu denenmiş

: sadece eğlence için,

  1. orada tüm html etiketleri bırakın "Web sayfasını" Seç yeni bir öğe oluşturun
  2. bu

    protected void Page_Load(object sender, EventArgs e) 
    { 
        Response.Write("test1"); 
        Response.Clear(); 
        Response.Write("test2"); 
        Response.End(); 
    } 
    
gibi page_load doldurun

Daha sonra herhangi bir html etiketi olmadan "test2" çıkacak.