SqlFileStream Konstruktory

Definice

Inicializuje novou instanci SqlFileStream třídy.

Přetížení

Name Description
SqlFileStream(String, Byte[], FileAccess)

Inicializuje novou instanci SqlFileStream třídy.

SqlFileStream(String, Byte[], FileAccess, FileOptions, Int64)

Inicializuje novou instanci SqlFileStream třídy.

Poznámky

Následující tabulka uvádí oprávnění zabezpečení přístupu kódu (CAS), která musí všichni volající v zásobníku SqlFileStream používat konstruktory.

Přístup k souborům Povolení
Read Read
Napiš Write
Čtení a zápis Read a Write

Další informace o CAS najdete v tématu Kódování zabezpečení přístupu a ADO.NET.

SqlFileStream(String, Byte[], FileAccess)

Zdroj:
System.Data.SqlClient.notsupported.cs

Inicializuje novou instanci SqlFileStream třídy.

public:
 SqlFileStream(System::String ^ path, cli::array <System::Byte> ^ transactionContext, System::IO::FileAccess access);
public SqlFileStream(string path, byte[] transactionContext, System.IO.FileAccess access);
new System.Data.SqlTypes.SqlFileStream : string * byte[] * System.IO.FileAccess -> System.Data.SqlTypes.SqlFileStream
Public Sub New (path As String, transactionContext As Byte(), access As FileAccess)

Parametry

path
String

Logická cesta k souboru. Cestu lze načíst pomocí funkce Transact-SQL Pathname v podkladovém sloupci FILESTREAM v tabulce.

transactionContext
Byte[]

Kontext transakce objektu SqlFileStream . Aplikace by měly vrátit pole bajtů vrácené voláním metody GET_FILESTREAM_TRANSACTION_CONTEXT.

access
FileAccess

Režim přístupu, který se má použít při otevření souboru. Podporované FileAccess hodnoty výčtu jsou Read, Writea ReadWrite.

Při použití FileAccess.ReadSqlFileStream lze objekt použít ke čtení všech existujících dat.

Při použití FileAccess.WriteSqlFileStream odkazuje na nulový bajtový soubor. Existující data budou přepsána při zavření objektu a transakce je potvrzena.

Při použití FileAccess.ReadWriteSqlFileStream odkazuje na soubor, který obsahuje všechna existující data. Popisovač se umístí na začátek souboru. Pomocí jedné z System.IOSeek metod můžete přesunout pozici úchytu v souboru k zápisu nebo připojení nových dat.

Výjimky

path je odkaz na hodnotu null nebo transactionContext je null.

path je prázdný řetězec (""), obsahuje pouze prázdné znaky nebo obsahuje jeden nebo více neplatných znaků.

–NEBO–

path začíná na "\\.\", například "\\.\\PHYSICALDRIVE0 ".

–NEBO–

Popisovač vrácený voláním NTCreateFile není typu FILE_TYPE_DISK.

Soubor nebyl nalezen.

Došlo k vstupně-výstupní chybě.

Volající nemá požadované oprávnění.

Zadaná path hodnota je neplatná, například že je na nemapované jednotce.

Požadovaný přístup nepovoluje operační systém pro zadanou cestu. K tomu dochází v případě, že je zadán přístup pro zápis nebo čtení a soubor nebo adresář je nastaven pro přístup jen pro čtení.

NtCreateFile selže s kódem chyby nastaveným na ERROR_SHARING_VIOLATION.

Poznámky

Pokud je vyvolán výjimka, všechny otevřené transakce by se měly vrátit zpět. V opačném případě může dojít ke ztrátě dat.

Viz také

Platí pro

SqlFileStream(String, Byte[], FileAccess, FileOptions, Int64)

Zdroj:
System.Data.SqlClient.notsupported.cs

Inicializuje novou instanci SqlFileStream třídy.

public:
 SqlFileStream(System::String ^ path, cli::array <System::Byte> ^ transactionContext, System::IO::FileAccess access, System::IO::FileOptions options, long allocationSize);
public SqlFileStream(string path, byte[] transactionContext, System.IO.FileAccess access, System.IO.FileOptions options, long allocationSize);
new System.Data.SqlTypes.SqlFileStream : string * byte[] * System.IO.FileAccess * System.IO.FileOptions * int64 -> System.Data.SqlTypes.SqlFileStream
Public Sub New (path As String, transactionContext As Byte(), access As FileAccess, options As FileOptions, allocationSize As Long)

Parametry

path
String

Logická cesta k souboru. Cestu lze načíst pomocí funkce Transact-SQL Pathname v podkladovém sloupci FILESTREAM v tabulce.

transactionContext
Byte[]

Kontext transakce objektu SqlFileStream . Při nastavení na hodnotu null se pro SqlFileStream objekt použije implicitní transakce. Aplikace by měly vrátit pole bajtů vrácené voláním metody GET_FILESTREAM_TRANSACTION_CONTEXT.

access
FileAccess

Režim přístupu, který se má použít při otevření souboru. Podporované FileAccess hodnoty výčtu jsou Read, Writea ReadWrite.

Při použití FileAccess.ReadSqlFileStream lze objekt použít ke čtení všech existujících dat.

Při použití FileAccess.WriteSqlFileStream odkazuje na nulový bajtový soubor. Existující data budou přepsána při zavření objektu a transakce je potvrzena.

Při použití FileAccess.ReadWriteSqlFileStream odkazuje na soubor, který obsahuje všechna existující data. Popisovač se umístí na začátek souboru. Pomocí jedné z System.IOSeek metod můžete přesunout pozici úchytu v souboru k zápisu nebo připojení nových dat.

options
FileOptions

Určuje možnost, která se má použít při otevírání souboru. Podporované FileOptions hodnoty jsou Asynchronous, WriteThrough, SequentialScana RandomAccess.

allocationSize
Int64

Velikost přidělení, která se má použít při vytváření souboru. Pokud je nastavená hodnota 0, použije se výchozí hodnota.

Výjimky

path je odkaz na hodnotu null nebo transactionContext je null.

path je prázdný řetězec (""), obsahuje pouze prázdné znaky nebo obsahuje jeden nebo více neplatných znaků.

path začíná na "\\.\", například "\\.\\PHYSICALDRIVE0 ".

Popisovač vrácený voláním NTCreateFile není typu FILE_TYPE_DISK.

options obsahuje nepodporovanou hodnotu.

Soubor nebyl nalezen.

Došlo k vstupně-výstupní chybě.

Volající nemá požadované oprávnění.

Zadaná path hodnota je neplatná, například že je na nemapované jednotce.

Požadovaný přístup nepovoluje operační systém pro zadanou cestu. K tomu dochází v případě, že je zadán přístup pro zápis nebo čtení a soubor nebo adresář je nastaven pro přístup jen pro čtení.

NtCreateFile selže s kódem chyby nastaveným na ERROR_SHARING_VIOLATION.

Poznámky

Pokud je vyvolán výjimka, všechny otevřené transakce by se měly vrátit zpět. V opačném případě může dojít ke ztrátě dat.

Viz také

Platí pro