Class VirtualFileProviderBase
Abstract base class for IVirtualFileProvider.
public abstract class VirtualFileProviderBase : IVirtualFileProvider, IDisposable- Inheritance
- 
      objectVirtualFileProviderBase
- Implements
- Derived
- Extension Methods
Constructors
VirtualFileProviderBase(string?)
protected VirtualFileProviderBase(string? rootPath)Parameters
- rootPathstring
Properties
RootPath
Gets or sets the root path of this provider. See remarks.
public string? RootPath { get; }Property Value
- string
- The root path. 
Remarks
All path are relative to the root path.
Methods
CreateDirectory(string)
Creates all directories so that url exists.
public virtual void CreateDirectory(string url)Parameters
- urlstring
- The URL. 
DirectoryExists(string)
Determines whether the specified path points to an existing directory.
public virtual bool DirectoryExists(string url)Parameters
- urlstring
- The path. 
Returns
Dispose()
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
public void Dispose()FileDelete(string)
Deletes the specified file.
public virtual void FileDelete(string url)Parameters
- urlstring
- The URL. 
FileExists(string)
Determines whether the specified path points to an existing file.
public virtual bool FileExists(string url)Parameters
- urlstring
- The path. 
Returns
FileMove(string, IVirtualFileProvider, string)
Move the specified file specified from its sourceUrl to the location pointed by destinationUrl in the destination provider. Do not overwrite, throw IOException if the file can't be moved.
public virtual void FileMove(string sourceUrl, IVirtualFileProvider destinationProvider, string destinationUrl)Parameters
- sourceUrlstring
- The source URL. 
- destinationProviderIVirtualFileProvider
- The destination provider. 
- destinationUrlstring
- The destination URL, relative to the destination provider. 
FileMove(string, string)
Move the specified file specified from its sourceUrl to the location pointed by destinationUrl. Do not overwrite, throw IOException if the file can't be moved.
public virtual void FileMove(string sourceUrl, string destinationUrl)Parameters
FileSize(string)
Returns the size of the specified file in bytes
public virtual long FileSize(string url)Parameters
- urlstring
- The file or directory for which to obtain size 
Returns
- long
- A long value representing the file size in bytes 
GetAbsolutePath(string)
Gets the absolute path for the specified local path from this provider.
public virtual string GetAbsolutePath(string path)Parameters
- pathstring
- The path local to this instance. 
Returns
- string
- An absolute path. 
GetLastWriteTime(string)
Returns the date and time the specified file or directory was last written to.
public virtual DateTime GetLastWriteTime(string url)Parameters
- urlstring
- The file or directory for which to obtain write date and time information. 
Returns
- DateTime
- A DateTime structure set to the date and time that the specified file or directory was last written to. 
ListFiles(string, string, VirtualSearchOption)
Returns the list of files from the specified path.
public virtual string[] ListFiles(string url, string searchPattern, VirtualSearchOption searchOption)Parameters
- urlstring
- searchPatternstring
- The search string to match against the names of files in - path. This parameter can contain a combination of valid literal path and wildcard (* and ?) characters, but it doesn't support regular expressions.
- searchOptionVirtualSearchOption
- One of the enumeration values that specifies whether the search operation should include all subdirectories or only the current directory. 
Returns
- string[]
- A list of files from the specified path 
OpenStream(string, VirtualFileMode, VirtualFileAccess, VirtualFileShare, StreamFlags)
Opens a Stream from the specified path.
public abstract Stream OpenStream(string url, VirtualFileMode mode, VirtualFileAccess access, VirtualFileShare share = VirtualFileShare.Read, StreamFlags streamFlags = StreamFlags.None)Parameters
- urlstring
- modeVirtualFileMode
- The mode. 
- accessVirtualFileAccess
- The access. 
- shareVirtualFileShare
- The process sharing mode. 
- streamFlagsStreamFlags
- The type of stream needed 
Returns
- Stream
- The opened stream. 
ResolvePath(string)
Resolves the path (can map virtual to absolute path).
protected virtual string ResolvePath(string path)Parameters
- pathstring
- The path. 
Returns
- string
- The resolved path. 
TryGetFileLocation(string, out string, out long, out long)
Gets the absolute path and location if the specified path physically exist on the disk in an uncompressed form (could be inside another file).
public virtual bool TryGetFileLocation(string path, out string filePath, out long start, out long end)Parameters
- pathstring
- The path. 
- filePathstring
- The file containing the data. 
- startlong
- The start offset in the file. 
- endlong
- The end offset in the file (can be -1 if full file). 
Returns
- bool
- True if success, false if not supported and entry is found (note: even when true, the file might not actually exists).