HttpResponse.Filter Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft ein Wrappingfilterobjekt ab, das den HTTP--Einheitstextkörper vor der Übertragung ändern soll, oder legt dieses fest.
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
Eigenschaftswert
Das Stream-Objekt, das als Ausgabefilter verwendet wird.
Ausnahmen
Filtern ist bei der Entität nicht zulässig.
Beispiele
Das folgende Beispiel ist eine ASP.NET Seite, die die Filter -Eigenschaft auf eine neue Instanz der UpperCaseFilter
-Klasse festlegt, eine benutzerdefinierte Stream Klasse, die den gesamten Durchlauftext in Großbuchstaben konvertiert. Die Informationen zur Anforderung werden in einer Textdatei gespeichert, und dann wird die Filter -Eigenschaft festgelegt. Nachdem der Antwortfilter eingerichtet wurde, ruft der Code die MapPath -Methode auf, um den absoluten Pfad zu einer Textdatei namens TestFile.txt
abzurufen, die als Quelle für den Inhalt der Antwort dient. Der Code erstellt dann ein neues StreamReader -Objekt, um die Textdatei von Anfang bis Ende zu lesen, und ruft dann die Write -Methode auf, um den Inhalt der Datei auf der Seite anzuzeigen.
<%@ 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>
Hinweise
Wenn Sie ein Stream
-Objekt erstellen und die Filter -Eigenschaft auf das Stream
-Objekt festlegen, durchlaufen alle von gesendeten Write HTTP-Ausgaben den Filter.