PlaceholderExtensionsReplaceTextAsync(IPlaceholderManager, String, Object, ISession, IUnityContainer, IDbScope, Card, NullableGuid, CardTask, Boolean, IDictionaryString, Object, Boolean, CancellationToken) - метод |
Заменяет плейсхолдеры в строке текста и возвращает строку текста с заменёнными плейсхолдерами
или
null, если при замене возникли ошибки. Вторым значением возвращает результат операции
ValidationResult.
Для более сложных вариантов замены плейсхолдеров используйте метод
FindAndReplaceAsync(IPlaceholderManager, IPlaceholderDocument, DictionaryString, Object, FindingOptions, ReplacementOptions, CreateAliasPlaceholderContextFuncAsync, CreateTablePlaceholderContextFuncAsync, CreateViewPlaceholderContextFuncAsync, IExtensionContainer, CancellationToken).
Пространство имён:
Tessa.Platform.Placeholders
Сборка:
Tessa (в Tessa.dll) Версия: 3.5.0.19
Синтаксис public static Task<(string text, ValidationResult result)> ReplaceTextAsync(
this IPlaceholderManager manager,
string text,
Object context = null,
ISession session = null,
IUnityContainer unityContainer = null,
IDbScope dbScope = null,
Card card = null,
Guid? cardID = null,
CardTask task = null,
bool noCardInDb = false,
IDictionary<string, Object> info = null,
bool withScripts = false,
CancellationToken cancellationToken = default
)
<ExtensionAttribute>
Public Shared Function ReplaceTextAsync (
manager As IPlaceholderManager,
text As String,
Optional context As Object = Nothing,
Optional session As ISession = Nothing,
Optional unityContainer As IUnityContainer = Nothing,
Optional dbScope As IDbScope = Nothing,
Optional card As Card = Nothing,
Optional cardID As Guid? = Nothing,
Optional task As CardTask = Nothing,
Optional noCardInDb As Boolean = false,
Optional info As IDictionary(Of String, Object) = Nothing,
Optional withScripts As Boolean = false,
Optional cancellationToken As CancellationToken = Nothing
) As Task(Of (text As String, result As ValidationResult))
public:
[ExtensionAttribute]
static Task<ValueTuple<String^, ValidationResult^>>^ ReplaceTextAsync(
IPlaceholderManager^ manager,
String^ text,
Object^ context = nullptr,
ISession^ session = nullptr,
IUnityContainer^ unityContainer = nullptr,
IDbScope^ dbScope = nullptr,
Card^ card = nullptr,
Nullable<Guid> cardID = nullptr,
CardTask^ task = nullptr,
bool noCardInDb = false,
IDictionary<String^, Object^>^ info = nullptr,
bool withScripts = false,
CancellationToken cancellationToken = CancellationToken()
)
[<ExtensionAttribute>]
static member ReplaceTextAsync :
manager : IPlaceholderManager *
text : string *
?context : Object *
?session : ISession *
?unityContainer : IUnityContainer *
?dbScope : IDbScope *
?card : Card *
?cardID : Nullable<Guid> *
?task : CardTask *
?noCardInDb : bool *
?info : IDictionary<string, Object> *
?withScripts : bool *
?cancellationToken : CancellationToken
(* Defaults:
let _context = defaultArg context null
let _session = defaultArg session null
let _unityContainer = defaultArg unityContainer null
let _dbScope = defaultArg dbScope null
let _card = defaultArg card null
let _cardID = defaultArg cardID null
let _task = defaultArg task null
let _noCardInDb = defaultArg noCardInDb false
let _info = defaultArg info null
let _withScripts = defaultArg withScripts false
let _cancellationToken = defaultArg cancellationToken new CancellationToken()
*)
-> Task<ValueTuple<string, ValidationResult>>
Параметры
- manager
- Тип: Tessa.Platform.PlaceholdersIPlaceholderManager
Объект, управляющий операциями с плейсхолдерами. - text
- Тип: SystemString
Текст, в котором заменяются плейсхолдеры. Значения null и пустая строка одинаковы.
- context (Optional)
- Тип: SystemObject
Контекст, в рамках которого выполняется замена плейсхолдеров,
или null, если контекст отсутствует.
Чаще всего используется контекст текущего расширения context.
- session (Optional)
- Тип: Tessa.Platform.RuntimeISession
Сессия, которая используется в плейсхолдерах,
или null, если плейсхолдеры не получат информацию по сессии.
- unityContainer (Optional)
- Тип: IUnityContainer
Контейнер Unity, к которому получат доступ плейсхолдеры для замены
- dbScope (Optional)
- Тип: Tessa.Platform.DataIDbScope
Объект, используемый для выполнения запросов для базы данных,
или null, если замена плейсхолдеров выполняется без доступа к базе данных.
- card (Optional)
- Тип: Tessa.CardsCard
Карточка со всеми загруженными секциями, для которой заменяются плейсхолдеры,
или null, если карточка не была загружены или если замена выполняется без привязки к карточке.
- cardID (Optional)
- Тип: SystemNullableGuid
Идентификатор карточки, для которой заменяются плейсхолдеры,
или null, если замена выполняется без привязки к карточке или идентификатор определяется по карточке.
Если карточка задана в параметре в card, но не указан этот параметр,
то идентификатор определяется на основании объекта карточки.
- task (Optional)
- Тип: Tessa.CardsCardTask
Задание со всеми загруженными секциями, для которой заменяются плейсхолдеры,
или null, если замена выполняется без привязки к заданию.
- noCardInDb (Optional)
- Тип: SystemBoolean
Признак того, что карточка отсутствует в базе данных, и не следует выполнять запросы для получения данных по карточке,
которые не были найдены в объекте card.
- info (Optional)
- Тип: System.Collections.GenericIDictionaryString, Object
Дополнительная информация, добавляемая в info замены плейсхолдеров.
Переданные параметры можно использовать для плейсхолдеров info и tinfo
- withScripts (Optional)
- Тип: SystemBoolean
Признак того, что требуется выполнить скомпилированные скрипты при замене плейсхолдеров.
Негативно влияет на производительность, используйте при необходимости.
- cancellationToken (Optional)
- Тип: System.ThreadingCancellationToken
Объект, посредством которого можно отменить асинхронную задачу.
Возвращаемое значение
Тип:
TaskValueTupleString,
ValidationResult
Строка текста с заменёнными плейсхолдерами
или
null, если при замене возникли ошибки.
Примечание об использовании
В Visual Basic и C# этот метод можно вызывать как метод экземпляра для любого объекта типа
IPlaceholderManager. При вызове метода для экземпляра следует опускать первый параметр. Дополнительные сведения см. в разделе
Методы расширения (Visual Basic) или
Методы расширения (Руководство по программированию в C#).
См. также