HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

Response property, avagy a HttpResponse osztály


Page osztály 4. rész

Példaprogram letöltése

14261 bájt

Múlt héten a Request property-vel foglalkoztunk, melyből megtudhatunk minden szükséges információt egy-egy webes kérésről. Most a kérés kiszolgálására adott válasz tulajdonságait tartalmazó Response property-vel, vagyis a HttpResponse osztállyal foglalkozunk részletesen.

Rendelkezésre áll számunkra egy Output property a Response objektumán belül. Ezen keresztül egy TextWriter típusú objektumot érhetünk el. Amikor a kliens számára küldendő HTML kódba szeretnénk beavatkozni, akkor ezt könnyedén megtehetjük ezt felhasználva.
Például, ha szeretnénk minden web oldalunkba elhelyezni egy megjegyzést, melyben web oldalunk címe látható, akkor ezt a TextWriter osztály WriteLine függvényével könnyedén megtehetjük. Mivel itt egy megjegyzést szúrunk a HTML kódba, így az a web oldalon nem lesz látható, ha viszont megnézzük a megjelent web lap HTML kódját, akkor annak első sorában ott lesz a beszúrt sorunk.
   private void Page_Load(object sender, System.EventArgs e)
   {
      TextWriter tw = Response.Output;
      tw.WriteLine("<!-- Web: www.SoftwareOnline.hu-->");
Lehetőségünk van arra is, hogy az IIS napló állományba írjunk tetszőleges adatokat, nyilván az adott kérés kiszolgálásával kapcsolatban. Ehhez az AppendToLog függvényt kell használnunk, melynek paraméterként az elhelyezendő sztringet kell megadni.
      Response.AppendToLog("Software Online sample");
A Charset property vizsgálatával azt is megtudhatjuk vagy befolyásolhatjuk, hogy milyen karakterkészleten készüljön el a kérésre adandó válasz.
      Label3.Text = "Charset: " + Response.Charset.ToString();
    }
A SuppressContent property-vel megakadályozhatjuk a http tartalom visszaküldését.
    private void Button1_Click(object sender, System.EventArgs e)
    {
      Response.SuppressContent = CheckBox1.Checked;
Ha a felhasználót szeretnénk átirányítani egy másik web oldalra, vagy web site-ra, akkor a Redirect függvény segítségével megtehetjük ezt. Ekkor paraméterként az új URL-t kell megadnunk.
      Response.Redirect("WebForm2.aspx");
    }
A WebForm3.aspx megnyitásakor a StatusCode property-nek új értéket adunk. Ezzel tudjuk szabályozni a kiszolgált kérés állapot kódját. A 200-as érték jelenti azt, hogy a kiszolgálással minden rendben volt. A lehetséges kódok az IIS dokumentációjában fellelhetők.
  private void Page_Load(object sender, System.EventArgs e)
  {
      Response.StatusCode = 401;
  }
A WebForm4.aspx lap megnyitásánál programból írunk tartalmat a web lapra.
A Write függvénnyel egy tetszőleges sztringet helyezhetünk el a visszaadandó HTML kódba.
    private void Page_Load(object sender, System.EventArgs e)
    {
      Response.Write("<b>Autoexec.bat:</b><br><br>");
A WriteFile függvényt használva egy tetszőleges állomány tartalmát szúrhatjuk a HTML kódba.
      Response.WriteFile("c:\\autoexec.bat");
      Response.Write("<br><br><br><br><b>Binary Write:</b><br><br>");
Lehetőségünk van egy bináris adathalmaz HTML kódba történő illesztésére is. Ehhez a BinaryWrite függvényt kell meghívnunk paraméterként egy bájtokat tartalmazó tömbbel.
      byte[] b = {32, 33, 34, 35, 36};
      Response.BinaryWrite(b);
    }
Az ApplyAppPathModifier segítségével előállíthatunk egy olyan címet, mely tartalmazza a virtuális elérési útvonalat, valamint a paraméterként megadott sztringet. Így, ha alkalmazásunk mondjunk a Page04 virtuális könyvtárból fut, akkor az alábbi példa a /Page04/WebForm4.aspx sztringet adja vissza.
    private void Button4_Click(object sender, System.EventArgs e)
    {
      Label2.Text = Response.ApplyAppPathModifier("WebForm4.aspx");
    }

Könyv
Ez a cikk megtalálható ebben a könyvben: C# Software Offline 2001 évkönyv 348. oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2012 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |