NegotiateStream.Read(Byte[], Int32, Int32) Methode
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.
Liest Daten aus diesem Datenstrom und speichert sie im angegebenen Array.
public:
override int Read(cli::array <System::Byte> ^ buffer, int offset, int count);
public override int Read(byte[] buffer, int offset, int count);
override this.Read : byte[] * int * int -> int
Public Overrides Function Read (buffer As Byte(), offset As Integer, count As Integer) As Integer
Parameter
- offset
- Int32
A Int32 containing the zero-based location in buffer which to begin speicher the data read from this stream.
Gibt zurück
Ein Int32 Wert, der die Anzahl der aus dem zugrunde liegenden Datenstrom gelesenen Bytes angibt. Wenn keine weiteren Zu lesenden Daten vorhanden sind, wird 0 zurückgegeben.
Ausnahmen
Fehler beim Lesevorgang.
Die Authentifizierung ist nicht aufgetreten.
Ein Read(Byte[], Int32, Int32) Vorgang wird bereits ausgeführt.
Beispiele
Das folgende Codebeispiel veranschaulicht das Lesen aus einem NegotiateStream.
public static void AuthenticateClient(TcpClient clientRequest)
{
NetworkStream stream = clientRequest.GetStream();
// Create the NegotiateStream.
NegotiateStream authStream = new NegotiateStream(stream, false);
// Perform the server side of the authentication.
authStream.AuthenticateAsServer();
// Display properties of the authenticated client.
IIdentity id = authStream.RemoteIdentity;
Console.WriteLine("{0} was authenticated using {1}.",
id.Name,
id.AuthenticationType
);
// Read a message from the client.
byte [] buffer = new byte[2048];
int charLength = authStream.Read(buffer, 0, buffer.Length);
string messageData = new String(Encoding.UTF8.GetChars(buffer, 0, buffer.Length));
Console.WriteLine("READ {0}", messageData);
// Finished with the current client.
authStream.Close();
// Close the client connection.
clientRequest.Close();
}
Hinweise
Die Methode liest maximal count Bytes aus dem aktuellen Datenstrom und speichert sie beginnend buffer bei offset.
Sie können diese Methode erst aufrufen, nachdem Sie sich erfolgreich authentifiziert haben. Rufen Sie zum Authentifizieren eine der AuthenticateAsClientMethoden , , AuthenticateAsClientAsync, BeginAuthenticateAsClient, AuthenticateAsServer, oder AuthenticateAsServerAsyncBeginAuthenticateAsServer Methoden auf.
Verwenden Sie die ReadAsync Methode, um diesen Vorgang asynchron auszuführen.