SqlFileStream Oluşturucular

Tanım

SqlFileStream sınıfının yeni bir örneğini başlatır.

Aşırı Yüklemeler

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

SqlFileStream sınıfının yeni bir örneğini başlatır.

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

SqlFileStream sınıfının yeni bir örneğini başlatır.

Açıklamalar

Aşağıdaki tabloda, yığındaki tüm çağıranların oluşturucuları kullanması SqlFileStream için gereken kod erişim güvenliği (CAS) izinleri listelenir.

Dosya erişimi İzin
Read Read
Write Write
OkumaYazma Read ve Write

CAS hakkında daha fazla bilgi için bkz. Code Access Security ve ADO.NET.

SqlFileStream(String, Byte[], FileAccess)

Kaynak:
System.Data.SqlClient.notsupported.cs

SqlFileStream sınıfının yeni bir örneğini başlatır.

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)

Parametreler

path
String

Dosyanın mantıksal yolu. Yol, tablodaki temel FILESTREAM sütunundaki Transact-SQL Pathname işlevi kullanılarak alınabilir.

transactionContext
Byte[]

Nesnenin işlem bağlamı SqlFileStream . Uygulamalar, GET_FILESTREAM_TRANSACTION_CONTEXT yöntemini çağırarak döndürülen bayt dizisini döndürmelidir.

access
FileAccess

Dosyayı açarken kullanılacak erişim modu. Desteklenen FileAccess numaralandırma değerleri : Read, Writeve ReadWrite.

kullanırkenFileAccess.ReadSqlFileStream, nesnesi var olan tüm verileri okumak için kullanılabilir.

kullanırken FileAccess.WriteSqlFileStream sıfır bayt dosyasına işaret edin. Nesne kapatıldığında ve işlem işlendiğinde mevcut verilerin üzerine yazılır.

kullanırken FileAccess.ReadWrite, SqlFileStream içindeki tüm verilerin yer aldığı bir dosyaya işaret eder. Tanıtıcı, dosyanın başına yerleştirilir. Yeni veri yazmak veya eklemek için dosya içindeki tanıtıcı konumunu taşımak için yöntemlerden birini System.IOSeek kullanabilirsiniz.

Özel durumlar

path null bir başvurudur veya transactionContext null'tır.

path boş bir dizedir (""), yalnızca boşluk içerir veya bir veya daha fazla geçersiz karakter içerir.

-VEYA-

path "\\.\" ile başlar, örneğin "\\.\PHYSICALDRIVE0 ".

-VEYA-

NTCreateFile çağrısı tarafından döndürülen tanıtıcı FILE_TYPE_DISK türünde değil.

Dosya bulunamıyor.

G/Ç hatası oluştu.

Çağıranın gerekli izni yok.

Belirtilen path geçersiz, örneğin eşlenmemiş bir sürücüde olmak.

İstenen erişime belirtilen yol için işletim sistemi tarafından izin verilmiyor. Yazma veya Okuma Yazma erişimi belirtildiğinde ve dosya veya dizin salt okunur erişim için ayarlandığında bu durum oluşur.

NtCreateFile, ERROR_SHARING_VIOLATION olarak ayarlanmış hata koduyla başarısız oluyor.

Açıklamalar

Bir özel durum oluşursa, tüm açık işlemler geri alınmalıdır. Aksi takdirde veri kaybı oluşabilir.

Ayrıca bkz.

Şunlara uygulanır

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

Kaynak:
System.Data.SqlClient.notsupported.cs

SqlFileStream sınıfının yeni bir örneğini başlatır.

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)

Parametreler

path
String

Dosyanın mantıksal yolu. Yol, tablodaki temel FILESTREAM sütunundaki Transact-SQL Pathname işlevi kullanılarak alınabilir.

transactionContext
Byte[]

Nesnenin işlem bağlamı SqlFileStream . null olarak ayarlandığında, nesne için SqlFileStream örtük bir işlem kullanılır. Uygulamalar, GET_FILESTREAM_TRANSACTION_CONTEXT yöntemini çağırarak döndürülen bayt dizisini döndürmelidir.

access
FileAccess

Dosyayı açarken kullanılacak erişim modu. Desteklenen FileAccess numaralandırma değerleri : Read, Writeve ReadWrite.

kullanırkenFileAccess.ReadSqlFileStream, nesnesi var olan tüm verileri okumak için kullanılabilir.

kullanırken FileAccess.WriteSqlFileStream sıfır bayt dosyasına işaret edin. Nesne kapatıldığında ve işlem işlendiğinde mevcut verilerin üzerine yazılır.

kullanırken FileAccess.ReadWrite, SqlFileStream içindeki tüm verilerin yer aldığı bir dosyaya işaret eder. Tanıtıcı, dosyanın başına yerleştirilir. Yeni veri yazmak veya eklemek için dosya içindeki tanıtıcı konumunu taşımak için yöntemlerden birini System.IOSeek kullanabilirsiniz.

options
FileOptions

Dosyayı açarken kullanılacak seçeneği belirtir. Desteklenen FileOptions değerler , Asynchronous, WriteThroughve SequentialScandeğerleridirRandomAccess.

allocationSize
Int64

Dosya oluştururken kullanılacak ayırma boyutu. 0 olarak ayarlanırsa, varsayılan değer kullanılır.

Özel durumlar

path null bir başvurudur veya transactionContext null'tır.

path boş bir dizedir (""), yalnızca boşluk içerir veya bir veya daha fazla geçersiz karakter içerir.

path "\\.\" ile başlar, örneğin "\\.\PHYSICALDRIVE0 ".

NTCreateFile çağrısı tarafından döndürülen tanıtıcı FILE_TYPE_DISK türünde değil.

options desteklenmeyen bir değer içerir.

Dosya bulunamıyor.

G/Ç hatası oluştu.

Çağıranın gerekli izni yok.

Belirtilen path geçersiz, örneğin eşlenmemiş bir sürücüde olmak.

İstenen erişime belirtilen yol için işletim sistemi tarafından izin verilmiyor. Yazma veya Okuma Yazma erişimi belirtildiğinde ve dosya veya dizin salt okunur erişim için ayarlandığında bu durum oluşur.

NtCreateFile, ERROR_SHARING_VIOLATION olarak ayarlanmış hata koduyla başarısız oluyor.

Açıklamalar

Bir özel durum oluşursa, tüm açık işlemler geri alınmalıdır. Aksi takdirde veri kaybı oluşabilir.

Ayrıca bkz.

Şunlara uygulanır