SqlFileStream Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Expone los datos de SQL Server que se almacenan con el atributo de columna FILESTREAM como una secuencia de bytes.
public ref class SqlFileStream sealed : System::IO::Stream
public sealed class SqlFileStream : System.IO.Stream
type SqlFileStream = class
inherit Stream
Public NotInheritable Class SqlFileStream
Inherits Stream
- Herencia
Comentarios
La SqlFileStream clase se usa para trabajar con varbinary(max)
datos almacenados con el atributo FILESTREAM en una base de datos de SQL Server 2008. Debe instalar .NET Framework 3.5 SP1 (o posterior) para trabajar SqlFileStream con datos FILESTREAM.
Si se especifica el atributo FILESTREAM en una varbinary(max)
columna, SQL Server almacenar los datos en el sistema de archivos NTFS local en lugar de en el archivo de base de datos. Las instrucciones Transact-SQL proporcionan funcionalidades de manipulación de datos dentro del servidor y las interfaces del sistema de archivos Win32 proporcionan acceso de streaming a los datos.
Nota
Los archivos individuales almacenados en una columna FILESTREAM no se pueden abrir directamente desde el sistema de archivos NTFS. Los datos de FILESTREAM de streaming solo funcionan en el contexto de una transacción de SQL Server.
La SqlFileStream clase se deriva de la Stream clase , que representa una abstracción de una secuencia de bytes de algún origen de datos arbitrario, como un archivo o un bloque de memoria. Puede leer desde un FILESTREAM mediante la transferencia de datos de una secuencia a una estructura de datos, como una matriz de bytes. Puede escribir en un FILESTREAM transfiriendo los datos de una estructura de datos a una secuencia. También puede buscar dentro de la secuencia, lo que le permite consultar y modificar datos en la posición actual dentro de la secuencia.
Para obtener documentación conceptual y ejemplos de código, consulte FILESTREAM Data( Datos de FILESTREAM).
Para obtener documentación sobre cómo configurar y configurar datos de FILESTREAM en SQL Server, consulte Diseño e implementación de almacenamiento DE FILESTREAM en SQL Server libros en pantalla de 2008.
Constructores
SqlFileStream(String, Byte[], FileAccess) |
Inicializa una nueva instancia de la clase SqlFileStream. |
SqlFileStream(String, Byte[], FileAccess, FileOptions, Int64) |
Inicializa una nueva instancia de la clase SqlFileStream. |
Propiedades
CanRead |
Obtiene un valor que indica si la secuencia actual admite lectura. |
CanSeek |
Obtiene un valor que indica si la secuencia actual admite búsquedas. |
CanTimeout |
Obtiene un valor que indica si se puede agotar el tiempo de espera de la secuencia actual. |
CanWrite |
Obtiene un valor que indica si la secuencia actual admite escritura. |
Length |
Obtiene un valor que indica la longitud de la secuencia actual en bytes. |
Name |
Obtiene la ruta de acceso lógica del SqlFileStream pasado al constructor. |
Position |
Obtiene o establece la posición en la secuencia actual. |
ReadTimeout |
Obtiene o establece un valor, en milisegundos, que determina durante cuánto tiempo la secuencia intentará realizar operaciones de lectura antes de que se agote el tiempo de espera. |
TransactionContext |
Obtiene o establece el contexto de transacción para este objeto SqlFileStream. |
WriteTimeout |
Obtiene o establece un valor, en milisegundos, que determina durante cuánto tiempo la secuencia intentará realizar operaciones de escritura antes de que se agote el tiempo de espera. |
Métodos
BeginRead(Byte[], Int32, Int32, AsyncCallback, Object) |
Comienza una operación de lectura asincrónica. |
BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object) |
Comienza una operación de escritura asincrónica. |
Close() |
Cierra la secuencia actual y libera todos los recursos (como sockets e identificadores de archivo) asociados a esta. En lugar de llamar a este método, asegúrese de que la secuencia se desecha correctamente. (Heredado de Stream) |
CopyTo(Stream) |
Lee los bytes de la secuencia actual y los escribe en otra secuencia de destino. Ambas posiciones de secuencias están avanzadas por el número de bytes copiados. (Heredado de Stream) |
CopyTo(Stream, Int32) |
Lee todos los bytes de la secuencia actual y los escribe en otra secuencia, usando el tamaño de búfer especificado. Ambas posiciones de secuencias están avanzadas por el número de bytes copiados. (Heredado de Stream) |
CopyToAsync(Stream) |
Lee asincrónicamente los bytes de la secuencia actual y los escribe en otra secuencia. Ambas posiciones de secuencias están avanzadas por el número de bytes copiados. (Heredado de Stream) |
CopyToAsync(Stream, CancellationToken) |
Lee de forma asincrónica los bytes de la secuencia actual y los escribe en otra secuencia mediante un token de cancelación especificado. Ambas posiciones de secuencias están avanzadas por el número de bytes copiados. (Heredado de Stream) |
CopyToAsync(Stream, Int32) |
Lee asincrónicamente los bytes de la secuencia actual y los escribe en otra secuencia, usando el tamaño de búfer especificado. Ambas posiciones de secuencias están avanzadas por el número de bytes copiados. (Heredado de Stream) |
CopyToAsync(Stream, Int32, CancellationToken) |
Lee asincrónicamente los bytes de la secuencia actual y los escribe en otra secuencia, utilizando el tamaño de búfer y el token de cancelación especificados. Ambas posiciones de secuencias están avanzadas por el número de bytes copiados. (Heredado de Stream) |
CreateObjRef(Type) |
Crea un objeto que contiene toda la información relevante necesaria para generar un proxy utilizado para comunicarse con un objeto remoto. (Heredado de MarshalByRefObject) |
CreateWaitHandle() |
Obsoletos.
Obsoletos.
Obsoletos.
Asigna un objeto WaitHandle. (Heredado de Stream) |
Dispose() |
Libera todos los recursos que usa Stream. (Heredado de Stream) |
Dispose(Boolean) |
Libera los recursos no administrados que usa Stream y, de forma opcional, libera los recursos administrados. (Heredado de Stream) |
DisposeAsync() |
Libera de forma asincrónica los recursos no administrados usados por Stream. (Heredado de Stream) |
EndRead(IAsyncResult) |
Espera a que se complete la lectura asincrónica que se encuentra pendiente. |
EndWrite(IAsyncResult) |
Finaliza una operación de escritura asincrónica. |
Equals(Object) |
Determina si el objeto especificado es igual que el objeto actual. (Heredado de Object) |
Finalize() |
Garantiza que se liberen los recursos y se realicen otras operaciones de limpieza cuando el recolector de elementos no utilizados reclama SqlFileStream. |
Flush() |
Borra todos los búferes de esta secuencia y hace que los datos almacenados en búfer se escriban en el dispositivo subyacente. |
FlushAsync() |
Borra asincrónicamente todos los búferes de esta secuencia y hace que los datos almacenados en búfer se escriban en el dispositivo subyacente. (Heredado de Stream) |
FlushAsync(CancellationToken) |
Borra asincrónicamente todos los búferes de esta secuencia, y hace que todos los datos almacenados en búfer se escriban en el dispositivo subyacente y supervisa las solicitudes de cancelación. (Heredado de Stream) |
GetHashCode() |
Sirve como la función hash predeterminada. (Heredado de Object) |
GetLifetimeService() |
Obsoletos.
Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia. (Heredado de MarshalByRefObject) |
GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
InitializeLifetimeService() |
Obsoletos.
Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia. (Heredado de MarshalByRefObject) |
MemberwiseClone() |
Crea una copia superficial del Object actual. (Heredado de Object) |
MemberwiseClone(Boolean) |
Crea una copia superficial del objeto MarshalByRefObject actual. (Heredado de MarshalByRefObject) |
ObjectInvariant() |
Obsoletos.
Proporciona compatibilidad con una clase Contract. (Heredado de Stream) |
Read(Byte[], Int32, Int32) |
Lee una secuencia de bytes en el flujo actual y avanza la posición en el flujo según el número de bytes leídos. |
Read(Span<Byte>) |
Cuando se reemplaza en una clase derivada, se lee una secuencia de bytes en la secuencia actual y se hace avanzar la posición dentro de la secuencia el número de bytes leídos. (Heredado de Stream) |
ReadAsync(Byte[], Int32, Int32) |
Lee asincrónicamente una secuencia de bytes de la secuencia actual y avanza la posición en esta secuencia según el número de bytes leídos. (Heredado de Stream) |
ReadAsync(Byte[], Int32, Int32, CancellationToken) |
Lee de forma asincrónica una secuencia de bytes en la secuencia actual, se hace avanzar la posición dentro de la secuencia el número de bytes leídos y controla las solicitudes de cancelación. (Heredado de Stream) |
ReadAsync(Memory<Byte>, CancellationToken) |
Lee de forma asincrónica una secuencia de bytes en la secuencia actual, se hace avanzar la posición dentro de la secuencia el número de bytes leídos y controla las solicitudes de cancelación. (Heredado de Stream) |
ReadAtLeast(Span<Byte>, Int32, Boolean) |
Lee al menos un número mínimo de bytes de la secuencia actual y avanza la posición dentro de la secuencia por el número de bytes leídos. (Heredado de Stream) |
ReadAtLeastAsync(Memory<Byte>, Int32, Boolean, CancellationToken) |
Lee de forma asincrónica al menos un número mínimo de bytes de la secuencia actual, avanza la posición dentro de la secuencia por el número de bytes leídos y supervisa las solicitudes de cancelación. (Heredado de Stream) |
ReadByte() |
Lee un byte de la secuencia y hace avanzar la posición de la secuencia en un byte, o devuelve -1 si está al final de la secuencia. |
ReadExactly(Byte[], Int32, Int32) |
|
ReadExactly(Span<Byte>) |
Lee bytes de la secuencia actual y avanza la posición dentro de la secuencia hasta |
ReadExactlyAsync(Byte[], Int32, Int32, CancellationToken) |
Lee de forma asincrónica el |
ReadExactlyAsync(Memory<Byte>, CancellationToken) |
Lee de forma asincrónica bytes de la secuencia actual, avanza la posición dentro de la secuencia hasta |
Seek(Int64, SeekOrigin) |
Establece la posición en el flujo actual. |
SetLength(Int64) |
Establece la longitud del flujo actual. |
ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
Write(Byte[], Int32, Int32) |
Escribe una secuencia de bytes en la secuencia actual y avanza la posición actual en esta secuencia según el número de bytes escritos. |
Write(ReadOnlySpan<Byte>) |
Cuando se reemplaza en una clase derivada, se escribe una secuencia de bytes en la secuencia actual y se hace avanzar la posición actual dentro de la secuencia el número de bytes escritos. (Heredado de Stream) |
WriteAsync(Byte[], Int32, Int32) |
Escribe asincrónicamente una secuencia de bytes en la secuencia actual y avanza la posición actual en esta secuencia según el número de bytes escritos. (Heredado de Stream) |
WriteAsync(Byte[], Int32, Int32, CancellationToken) |
Escribe de forma asincrónica una secuencia de bytes en la secuencia actual, se hace avanzar la posición actual dentro de la secuencia el número de bytes escritos y controla las solicitudes de cancelación. (Heredado de Stream) |
WriteAsync(ReadOnlyMemory<Byte>, CancellationToken) |
Escribe de forma asincrónica una secuencia de bytes en la secuencia actual, se hace avanzar la posición actual dentro de la secuencia el número de bytes escritos y controla las solicitudes de cancelación. (Heredado de Stream) |
WriteByte(Byte) |
Escribe un byte a la posición actual en la secuencia y avanza la posición de la secuencia en un byte. |
Métodos de extensión
CopyToAsync(Stream, PipeWriter, CancellationToken) |
Lee de forma asincrónica los bytes de Stream y los escribe en el elemento PipeWriter especificado, mediante un token de cancelación. |