public abstract class FileContent : NotificationObject,
IFileContent, INotifyPropertyChanged, IAsyncDisposable, IAsyncInitializable, ISealable
Public MustInherit Class FileContent
Inherits NotificationObject
Implements IFileContent, INotifyPropertyChanged, IAsyncDisposable, IAsyncInitializable,
ISealable
public ref class FileContent abstract : public NotificationObject,
IFileContent, INotifyPropertyChanged, IAsyncDisposable, IAsyncInitializable, ISealable
[<AbstractClassAttribute>]
type FileContent =
class
inherit NotificationObject
interface IFileContent
interface INotifyPropertyChanged
interface IAsyncDisposable
interface IAsyncInitializable
interface ISealable
end
FileContent | Создаёт экземпляр класса с заданными параметрами. После вызова конструктора объекта требуется инициализировать методом InitializeAsync(CancellationToken). |
Cancellation | Объект, который может использоваться для отмены асинхронных операций с содержимым файла, если оно поддерживает отмену. На текущий момент это доступно для загрузки содержимого версии файла. |
HasCurrentContentData | Признак, который определяет доступность текущего контента для получения, например, по наличию файла в локальной папке. Свойство HasData определяет доступность как текущего контента, так и родительского. Связь родительский-дочерний актуально для последней версии файла. |
HasData | Возвращает признак того, что контент файла был установлен методом SetAsync(Stream, CancellationToken). |
IsBoundToFileSource | Признак того, что контент был создан источником файлов, а не передан снаружи, поэтому для оптимизации обращения к содержимому можно использовать источник файлов. Обычно актуально для Remote-контента. |
IsDirty | Признак того, что контент мог быть изменён. Следует установить значение равным true перед открытием контента на редактирование во внешней программе. Определить точно, был ли изменён контент, можно, вызвав метод IsModifiedAsync(CancellationToken). |
IsDisposed | Признак того, что контент был освобождён и объект нельзя использовать. |
IsLocal | Признак того, что контент является локальным, т.е. к нему можно получить локальный путь посредством метода GetLocalFilePath. |
IsSealed | Признак того, что объект был защищён от изменений. |
Parent | Родительский контент или null, если родительский контент отсутствует. Если производится запрос текущего контента, и он не был установлен, то он сначала локально копируется из родительского, если тот существует, а затем считывается локально. |
RequestInfo | Дополнительная пользовательская информация, передаваемая в запросы к серверу, которые относятся к загрузке содержимого файла или версии, которые сохраняются в текущем объекте. Рекомендуется, чтобы все данные были сериализуемых типов (в соответствии с типовой BSON-сериализацией в системе). Такие данные могут перезаписать данные из RequestInfo. |
Size | Размер контента файла в байтах или 0, если контент ещё не был загружен. Проверить, был ли загружен контент, можно, обратившись к свойству HasData. |
Uri | Ссылка к контенту файла, который может быть доступен как локально (на диске), так и удалённо (сетевой ресурс). Значение может быть равно null, если контент недоступен по ссылке. |
CheckDisposed | Выбрасывает исключение [ObjectDisposedException], если ресурсы текущего объекта были освобождены. |
DisposeAsync | Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources asynchronously. |
DisposeAsync(Boolean) | Освобождает ресурсы, занимаемые объектом. |
EnsureLocalUpdatedAsync | Удостоверяет, что файл будет загружен локально и доступен по пути GetLocalFilePath, если файл является локальным IsLocal. Если файл не локальный, то метод не выполняет действий. |
EnterLockAsync | Выполняет вход в блок, в пределах которого нет других обращений к контенту файла. Вызовите метод в блоке using(await content.EnterLockAsync().ConfigureAwait(false)). |
Equals | Determines whether the specified object is equal to the current object. (Унаследован от Object) |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Унаследован от Object) |
GetAsync | Открывает и возвращает поток с контентом файла. Если контент файла отсутствует, то вызывает исключение InvalidOperationException. Поэтому перед получением контента можно обратиться к свойству HasData. |
GetContentFromFilePathFuncAsync | Возвращает функцию, которая получает контент файла по заданному пути. Функцию можно использовать при создании контента RemoteFileContent. |
GetCoreAsync | Возвращает поток с содержимым файла. Если файл не был загружен, то может быть выброшено исключение. |
GetHashCode | Serves as the default hash function. (Унаследован от Object) |
GetLocalFilePath | Возвращает локальный путь к контенту файла, если контент доступен локально. Если контент не доступен локально, то вызывает исключение InvalidOperationException. Поэтому перед вызовом метода можно обратиться к свойству IsLocal. |
GetLocalFilePathCore | Возвращает путь к файлу с локальным контентом, даже если он ещё не был загружен, или null, если контент не представлен локальным файлом. |
GetSizeFromFilePathFuncAsync | Возвращает функцию, которая получает размер файла по заданному пути. Функцию можно использовать при создании контента RemoteFileContent. |
GetType | Gets the Type of the current instance. (Унаследован от Object) |
InitializeAsync | Выполняет асинхронную инициализацию объекта. |
InvalidateAsync | Удаляет локально загруженный контент, переводя его в начальное состояние. Следующий раз при получении контента он будет заново загружен. |
InvalidateCoreAsync | Сбрасывает информацию о контенте файла. Например, очищает дату изменения файла. Если контент не является локальным, то может не выполнять действий. |
IsModifiedAsync | Возвращает признак того, что контент файла на диске был изменён с момента его установки методом SetAsync(Stream, CancellationToken). Для защищённых от изменений объектов метод всегда возвращает false. |
IsModifiedCoreAsync | Возвращает признак того, что локальный контент был изменён. Например, был изменён файл на диске по дате изменения. При изменении контента может быть обновлён его размер, а также он может быть, например, помечен как изменённый в структуре карточки. |
MemberwiseClone | Creates a shallow copy of the current Object. (Унаследован от Object) |
OnPropertyChanged(PropertyChangedEventArgs) |
Уведомляет об изменении свойства с именем, заданным в аргументах события.
(Унаследован от NotificationObject) |
OnPropertyChanged(String) |
Уведомляет об изменении свойства с заданным именем у объекта.
(Унаследован от NotificationObject) |
OnPropertyChangedAsync(PropertyChangedEventArgs, Boolean) |
Уведомляет об изменении свойства с именем, заданным в аргументах события, асинхронно, в соответствии
с принятым для текущего объекта поведением. Если есть возможность вызвать событие синхронно, то оно вызывается синхронно.
Если объект является моделью представления WPF и текущий поток отличен от потока диспетчера WPF для приложения
(основной поток UI), то выполнение асинхронно переключается в этот поток. Если это не так, то событие выполняется синхронно.
(Унаследован от NotificationObject) |
OnPropertyChangedAsync(String, Boolean) |
Уведомляет об изменении свойства с заданным именем у объекта асинхронно, в соответствии
с принятым для текущего объекта поведением. Если есть возможность вызвать событие синхронно, то оно вызывается синхронно.
Если объект является моделью представления WPF и текущий поток отличен от потока диспетчера WPF для приложения
(основной поток UI), то выполнение асинхронно переключается в этот поток. Если это не так, то событие выполняется синхронно.
(Унаследован от NotificationObject) |
PrepareContentLocationCoreAsync | Подготавливает местоположение контента перед его записью или перемещением в это местоположение. Например, создаёт папку на диске, если контент представлен файлом на диске. |
RemoveContentSafeCoreAsync | Метод удаляет локальный контент, если он был создан. Если контент не является локальным, то метод не должен выполнять действий. Метод не должен выбрасывать исключений, даже критичных. |
RenameAsync | Переименовывает файл, в который записывается контент. Если файл ещё не существует, то он будет назван по-другому в момент создания. Метод гарантированно сработает только в том случае, если контент является локальным, т.е. свойство IsLocal возвращает true. |
RenameCoreAsync | Переименовывает имя контента в соответствии с новым именем файла. Если контент представлен локальным файлом на диске, то метод должен переименовать этот файл. Если контент не является локальным, то метод может не выполнять действий. |
Seal | Защищает объект от изменений. |
SetAsync | Открывает и возвращает поток, выполняющий перезапись контента файла. |
SetCoreAsync | Устанавливает содержимое файла. Если контент запрещено изменять, то может быть выброшено исключение. |
SetLocalAsync | Устанавливает контент локального файла по заданному пути. |
SetLocalCoreAsync | Устанавливает локальное содержимое файла, представленное в виде файла на диске, по заданному методу, который получает в параметре путь к файлу на диске и может его создать или изменить некоторым способом. Если содержимое файла не является локальным, то может быть выброшено исключение. |
SetRemoteAsync | Устанавливает содержимое файла, представленное заданными методами. Если контент запрещено изменять, то может быть выброшено исключение. Метод доступен как для локальных файлов, так и для нелокальных (remote), в т.ч. для файлов большого размера. |
SetRemoteCoreAsync | Устанавливает содержимое файла, представленное заданными методами. Если контент запрещено изменять, то может быть выброшено исключение. Метод доступен как для локальных файлов, так и для нелокальных (remote), в т.ч. для файлов большого размера. |
ToString | Returns a string that represents the current object. (Унаследован от Object) |
UpdateLocalContentFromParentCoreAsync | Обновляет локальный контент на основании контента родительского объекта. При вызове этого метода гарантируется, что у текущего контента есть родительский контент, в котором присутствуют загруженные данные. Если контент не локальный, то метод может не выполнять действий, но не должен выбрасывать исключений. |
UpdateModifiedCoreAsync | Обновляет информацию, на основании которой можно определить, изменялся ли контент. Например, сохраняет время изменения файла, чтобы его можно было сравнить со временем изменения в любой другой момент. |
UpdateSizeAsync | Обновляет свойство с размером контента Size для загруженных файлов. |
UpdateSizeCoreAsync | Обновляет размер локального контента. Возвращает true, если размер был обновлён. |
PropertyChanged | Событие, уведомляющее об изменении свойства с определённым именем у модели представления. (Унаследован от NotificationObject) |
UnknownSize | Неизвестный размер контента. |
Get | (Определяется ComHelper) |
Invoke | (Определяется ComHelper) |
ResolveRoot |
Возвращает корневой объект содержимого по свойствам Parent.
Возвращает текущий объект content, если у него отсутствует родитель Parent.
(Определяется FileExtensions) |
Set | (Определяется ComHelper) |
SetRemoteFromPathAsync |
Устанавливает содержимое IFileContent по физическому файлу, расположенному по заданному пути.
Метод доступен и для локального, и для нелокального (remote) содержимого.
(Определяется FileExtensions) |