PlaceholderExtensionsReplaceTextAsync(IPlaceholderManager, String, ISession, IUnityContainer, IDbScope, Object, Card, NullableGuid, CardTask, Boolean, IDictionaryString, Object, Boolean, CancellationToken) - метод
Заменяет плейсхолдеры в строке текста и возвращает строку текста с заменёнными плейсхолдерами.
Любые сообщения валидации, возникшие при замене плейсхолдеров, записываются в файл лога.
При наличии ошибок валидации выбрасывается исключение
InvalidOperationException
с детальным текстом всех сообщений валидации.
Для более сложных вариантов замены плейсхолдеров используйте метод
FindAndReplaceAsync(IPlaceholderManager, IPlaceholderDocument, DictionaryString, Object, FindingOptions, ReplacementOptions, CreateAliasPlaceholderContextFuncAsync, CreateTablePlaceholderContextFuncAsync, CreateViewPlaceholderContextFuncAsync, IExtensionContainer, CancellationToken).
Пространство имён: Tessa.Platform.PlaceholdersСборка: Tessa (в Tessa.dll) Версия: 4.0.4
public static Task<string?> ReplaceTextAsync(
this IPlaceholderManager manager,
string text,
ISession session = null,
IUnityContainer unityContainer = null,
IDbScope dbScope = null,
Object context = 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 session As ISession = Nothing,
Optional unityContainer As IUnityContainer = Nothing,
Optional dbScope As IDbScope = Nothing,
Optional context As Object = 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 String)
public:
[ExtensionAttribute]
static Task<String^>^ ReplaceTextAsync(
IPlaceholderManager^ manager,
String^ text,
ISession^ session = nullptr,
IUnityContainer^ unityContainer = nullptr,
IDbScope^ dbScope = nullptr,
Object^ context = 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 *
?session : ISession *
?unityContainer : IUnityContainer *
?dbScope : IDbScope *
?context : Object *
?card : Card *
?cardID : Nullable<Guid> *
?task : CardTask *
?noCardInDb : bool *
?info : IDictionary<string, Object> *
?withScripts : bool *
?cancellationToken : CancellationToken
(* Defaults:
let _session = defaultArg session null
let _unityContainer = defaultArg unityContainer null
let _dbScope = defaultArg dbScope null
let _context = defaultArg context 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<string>
- manager IPlaceholderManager
- Объект, управляющий операциями с плейсхолдерами.
- text String
-
Текст, в котором заменяются плейсхолдеры. Значения null и пустая строка одинаковы.
- session ISession (Optional)
-
Сессия, которая используется в плейсхолдерах,
или null, если плейсхолдеры не получат информацию по сессии.
- unityContainer IUnityContainer (Optional)
-
Контейнер Unity, к которому получат доступ плейсхолдеры для замены
- dbScope IDbScope (Optional)
-
Объект, используемый для выполнения запросов для базы данных,
или null, если замена плейсхолдеров выполняется без доступа к базе данных.
- context Object (Optional)
-
Контекст, в рамках которого выполняется замена плейсхолдеров,
или null, если контекст отсутствует.
Чаще всего используется контекст текущего расширения context.
- card Card (Optional)
-
Карточка со всеми загруженными секциями, для которой заменяются плейсхолдеры,
или null, если карточка не была загружены или если замена выполняется без привязки к карточке.
- cardID NullableGuid (Optional)
-
Идентификатор карточки, для которой заменяются плейсхолдеры,
или null, если замена выполняется без привязки к карточке или идентификатор определяется по карточке.
Если карточка задана в параметре в card, но не указан этот параметр,
то идентификатор определяется на основании объекта карточки.
- task CardTask (Optional)
-
Задание со всеми загруженными секциями, для которой заменяются плейсхолдеры,
или null, если замена выполняется без привязки к заданию.
- noCardInDb Boolean (Optional)
-
Признак того, что карточка отсутствует в базе данных, и не следует выполнять запросы для получения данных по карточке,
которые не были найдены в объекте card.
- info IDictionaryString, Object (Optional)
-
Дополнительная информация, добавляемая в info замены плейсхолдеров.
Переданные параметры можно использовать для плейсхолдеров info и tinfo
- withScripts Boolean (Optional)
-
Признак того, что требуется выполнить скомпилированные скрипты при замене плейсхолдеров.
Негативно влияет на производительность, используйте при необходимости.
- cancellationToken CancellationToken (Optional)
- Объект, посредством которого можно отменить асинхронную задачу.
TaskStringСтрока текста с заменёнными плейсхолдерами.В Visual Basic и C# этот метод можно вызывать как метод экземпляра для любого объекта типа
IPlaceholderManager. При вызове метода для экземпляра следует опускать первый параметр. Дополнительные сведения см. в разделе
Методы расширения (Visual Basic) или
Методы расширения (Руководство по программированию в C#).