SqlFileStream Constructeurs
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Initialise une nouvelle instance de la classe SqlFileStream.
Surcharges
SqlFileStream(String, Byte[], FileAccess) |
Initialise une nouvelle instance de la classe SqlFileStream. |
SqlFileStream(String, Byte[], FileAccess, FileOptions, Int64) |
Initialise une nouvelle instance de la classe SqlFileStream. |
Remarques
Le tableau suivant répertorie les autorisations de sécurité d’accès au code (CAS) que tous les appelants de la pile doivent avoir pour utiliser les SqlFileStream
constructeurs.
Accès aux fichiers | Autorisation |
---|---|
Lire | Read |
Write | Write |
Lecture/écriture | Read et Write |
Pour plus d’informations sur le cas cas, consultez Sécurité et ADO.NET d’accès au code.
SqlFileStream(String, Byte[], FileAccess)
Initialise une nouvelle instance de la classe SqlFileStream.
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)
Paramètres
- path
- String
Chemin logique du fichier. Le chemin peut être récupéré à l’aide de la fonction Transact-SQL Pathname sur la colonne FILESTREAM sous-jacente dans la table.
- transactionContext
- Byte[]
Contexte de transaction de l’objet SqlFileStream
. Les applications doivent renvoyer le tableau d’octets retourné en appelant la méthode GET_FILESTREAM_TRANSACTION_CONTEXT.
- access
- FileAccess
Mode d’accès à utiliser à l’ouverture du fichier. Les valeurs d’énumération FileAccess prises en charge sont Read, Write et ReadWrite.
Quand vous utilisez FileAccess.Read
, l’objet SqlFileStream
peut servir à lire toutes les données existantes.
Quand vous utilisez FileAccess.Write
, SqlFileStream
pointe vers un fichier de zéro octet. Les données existantes sont écrasées quand l’objet est fermé et la transaction validée.
Quand vous utilisez FileAccess.ReadWrite
, SqlFileStream
pointe vers un fichier qui contient toutes les données existantes. Le handle est positionné au début du fichier. Vous pouvez utiliser l’une des méthodes System.IO
Seek
pour déplacer la position du handle au sein du fichier afin d’écrire ou d’ajouter de nouvelles données.
Exceptions
path
est une référence Null, ou transactionContext
est Null.
path
est une chaîne vide (""), contient seulement un espace blanc ou contient un ou plusieurs caractères non valides.
path
commence par "\\.\", par exemple "\\.\PHYSICALDRIVE0 ".
Le handle retourné par l’appel à NTCreateFile n’est pas du type FILE_TYPE_DISK.
options
contient une valeur non prise en charge.
Fichier introuvable.
Une erreur d'E/S s'est produite.
L'appelant n'a pas l'autorisation requise.
Le path
spécifié n’est pas valide ; il est, par exemple, sur un lecteur non mappé.
L’accès demandé n’est pas autorisé par le système d’exploitation pour le chemin spécifié. Cela se produit quand l’accès Write ou ReadWrite est spécifié et que le fichier ou répertoire est défini pour un accès en lecture seule.
NtCreateFile échoue avec le code d’erreur défini sur ERROR_SHARING_VIOLATION.
Remarques
Si une exception est levée, toutes les transactions ouvertes doivent être restaurées. Sinon, une perte de données peut se produire.
Voir aussi
S’applique à
SqlFileStream(String, Byte[], FileAccess, FileOptions, Int64)
Initialise une nouvelle instance de la classe SqlFileStream.
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)
Paramètres
- path
- String
Chemin logique du fichier. Le chemin peut être récupéré à l’aide de la fonction Transact-SQL Pathname sur la colonne FILESTREAM sous-jacente dans la table.
- transactionContext
- Byte[]
Contexte de transaction de l’objet SqlFileStream
. Quand la valeur est Null, une transaction implicite est utilisée pour l’objet SqlFileStream
. Les applications doivent renvoyer le tableau d’octets retourné en appelant la méthode GET_FILESTREAM_TRANSACTION_CONTEXT.
- access
- FileAccess
Mode d’accès à utiliser à l’ouverture du fichier. Les valeurs d’énumération FileAccess prises en charge sont Read, Write et ReadWrite.
Quand vous utilisez FileAccess.Read
, l’objet SqlFileStream
peut servir à lire toutes les données existantes.
Quand vous utilisez FileAccess.Write
, SqlFileStream
pointe vers un fichier de zéro octet. Les données existantes sont écrasées quand l’objet est fermé et la transaction validée.
Quand vous utilisez FileAccess.ReadWrite
, SqlFileStream
pointe vers un fichier qui contient toutes les données existantes. Le handle est positionné au début du fichier. Vous pouvez utiliser l’une des méthodes System.IO
Seek
pour déplacer la position du handle au sein du fichier afin d’écrire ou d’ajouter de nouvelles données.
- options
- FileOptions
Spécifie l’option à utiliser pendant l’ouverture du fichier. Les valeurs de FileOptions prises en charge sont Asynchronous, WriteThrough, SequentialScan et RandomAccess.
- allocationSize
- Int64
Taille d’allocation à utiliser pendant la création d’un fichier. Si la valeur est 0, la valeur par défaut est utilisée.
Exceptions
path
est une référence Null, ou transactionContext
est Null.
path
est une chaîne vide (""), contient seulement un espace blanc ou contient un ou plusieurs caractères non valides.
path
commence par "\\.\", par exemple "\\.\PHYSICALDRIVE0 ".
Le handle retourné par l’appel à NTCreateFile n’est pas du type FILE_TYPE_DISK.
options
contient une valeur non prise en charge.
Fichier introuvable.
Une erreur d'E/S s'est produite.
L'appelant n'a pas l'autorisation requise.
Le path
spécifié n’est pas valide ; il est, par exemple, sur un lecteur non mappé.
L’accès demandé n’est pas autorisé par le système d’exploitation pour le chemin spécifié. Cela se produit quand l’accès Write ou ReadWrite est spécifié et que le fichier ou répertoire est défini pour un accès en lecture seule.
NtCreateFile échoue avec le code d’erreur défini sur ERROR_SHARING_VIOLATION.
Remarques
Si une exception est levée, toutes les transactions ouvertes doivent être restaurées. Sinon, une perte de données peut se produire.