HttpResponse.Filter Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
İletim öncesinde HTTP varlık gövdesini değiştirmek için kullanılan bir sarmalama filtresi nesnesini alır veya ayarlar.
public:
property System::IO::Stream ^ Filter { System::IO::Stream ^ get(); void set(System::IO::Stream ^ value); };
public System.IO.Stream Filter { get; set; }
member this.Filter : System.IO.Stream with get, set
Public Property Filter As Stream
Özellik Değeri
Stream Çıkış filtresi işlevi gören nesne.
Özel durumlar
Varlıkta filtrelemeye izin verilmez.
Örnekler
Aşağıdaki örnek, özelliğini sınıfın Filter yeni bir örneğine UpperCaseFilter
ayarlayan bir ASP.NET sayfasıdır ve bu sayfadan geçen tüm metni büyük harfe dönüştüren özel Stream bir sınıftır. İstekle ilgili bilgiler bir metin dosyasına kaydedilir ve özellik Filter ayarlanır. Yanıt filtresi uygulandıktan sonra kod, yanıtın MapPath içeriği için kaynak olarak hizmet veren adlı TestFile.txt
bir metin dosyasının mutlak yolunu almak için yöntemini çağırır. Kod daha sonra metin dosyasını baştan sona okumak için yeni StreamReader bir nesne oluşturur ve ardından dosyanın içeriğini sayfada görüntülemek için yöntemini çağırır Write .
<%@ Page Language="C#" %>
<%@ Import Namespace="System.IO" %>
<%@ import Namespace="Samples.AspNet.CS.Controls" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
private void Page_Load(object sender, EventArgs e)
{
// Filter the text to be rendered as all uppercase.
Response.Filter = new UpperCaseFilterStream(Response.Filter);
// Convert a virtual path to a fully qualified physical path.
string fullpath = Request.MapPath("~\\TestFile.txt");
try
{
// Read the contents of the file using a StreamReader.
using (StreamReader sr = new StreamReader(fullpath))
while (sr.Peek() >= 0)
{
Response.Write((char)sr.Read());
}
Message.Text = "Reading the file was successful.";
}
catch (Exception ex)
{
Message.Text = "The process failed.";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HttpResponse.MapPath Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:Label id="Message"
runat="server"/>
</form>
</body>
</html>
<%@ Page Language="VB" Debug="true"%>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="Samples.AspNet.VB.Controls" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Private Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
' Filter the text to be rendered as all uppercase.
Response.Filter = New UpperCaseFilterStream(Response.Filter)
' Convert a virtual path to a fully qualified physical path.
Dim fullpath As String = Request.MapPath("~\\TestFile.txt")
Try
Dim sr As StreamReader = New StreamReader(fullpath)
Do While sr.Peek() >= 0
Response.Write(Convert.ToChar(sr.Read()))
Loop
sr.Close()
Message.Text = "Reading the file was successful."
Catch ex As Exception
Message.Text = "The process failed."
End Try
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HttpResponse.MapPath Example</title>
</head>
<body>
<form id="Form1" runat="server">
<asp:Label id="Message"
runat="server"/>
</form>
</body>
</html>
Açıklamalar
Bir Stream
nesne oluşturduğunuzda ve özelliğini nesne olarak ayarladığınızda Filter Stream
, tarafından Write gönderilen tüm HTTP çıktısı filtreden geçer.