Język

FormBuilderJson Klasa

Definicja

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

public sealed class FormBuilderJson : Microsoft.Bot.Builder.FormFlow.FormBuilderBase<Newtonsoft.Json.Linq.JObject>
type FormBuilderJson = class
    inherit FormBuilderBase<JObject>
Public NotInheritable Class FormBuilderJson
Inherits FormBuilderBase(Of JObject)
Dziedziczenie
FormBuilderBase<Newtonsoft.Json.Linq.JObject>
FormBuilderJson

Uwagi

Zdefiniuj formularz za pomocą schematu JSON z opcjonalnymi dodatkowymi adnotacjami odpowiadającymi atrybutom udostępnionym dla C#.

%FormFlow wykorzystuje szereg standardowych słów kluczowych schematu JSON , w tym:

  • type -- Definiuje typ pól. * enum -- Definiuje możliwe wartości pól. * minimum-- Definiuje minimalną dozwoloną wartość opisaną w .NumericAttribute * maximum-- Definiuje maksymalną dozwoloną wartość opisaną w .NumericAttribute * required -- Definiuje, jakie pola są wymagane. * pattern-- Dla łańcuchów znaczków pola będą używane do weryfikacji wprowadzonego wzorca, jak opisano w .PatternAttribute

    Szablony i prompty używają tego samego słownictwa co TemplateAttribute i PromptAttribute. Nazwy właściwości są takie same, a wartości takie same jak w podstawowej enumeracji C#. Na przykład, aby zdefiniować szablon nadpisujący szablon NotUnderstood i określić TemplateBaseAttribute.ChoiceStyle, wpisz to do schematu: ~~~ "Templates":{ "NotUnderstood": { Patterns: ["I don't get it"], "ChoiceStyle":"Auto"}} ~~~

    %Extensions zdefiniowany u korzenia schematu * OnCompletion: script -- skrypt C# z argumentami (IDialogContext kontekst, stan JObject) do uzupełniania formularza. * References: [assemblyReference, ...] -- Zdefiniuj odniesienia do zawierania w skryptach. Ścieżki powinny być absolutne lub względne względem aktualnego katalogu. Domyślnie Microsoft.Bot.Builder.dll jest dołączone. * Imports: [import, ...] -- Zdefiniuj importy do uwzględnienia skryptów z użyciem. Domyślnie te przestrzenie nazw są dołączone: Microsoft. Bot.Builder, Microsoft. Bot.Builder.Dialogs, Microsoft. Bot.Builder.FormFlow, Microsoft. Bot.Builder.FormFlow.Advanced, System.Collections.Generic, System.Linq

    %Extensions definiowany u korzenia schematu lub jako odpowiednik własności "typ". * Templates:{TemplateUsage: { Patterns:[string, ...], &lt;args&gt; }, ...} -- Zdefiniuj szablony. * Prompt: { Patterns:[string, ...] &lt;args&gt;} -- Zdefiniuj prompt.

    %Extensions występują w opisie właściwości jako równorzędne z własnością "typu" schematu JSON. * DateTime:bool -- Oznacza pole jako pole DateTime. * Describe:string-- Opis ciała opisanego w .DescribeAttribute * Terms:[string,...]-- Wyrażenia regularne do dopasowywania wartości pola opisane w .TermsAttribute * MaxPhrase:int -- To przejdzie przez twoje warunki GenerateTerms(String, Int32) , by je rozszerzyć. * Values:{ string: {Describe:string, Terms:[string, ...], MaxPhrase}, ...} -- Ciąg musi być znaleziony w typach "enum", co pozwala nadpisać automatycznie generowane opisy i terminy. Jeśli podano MaxPhrase, terminy są przekazywane przez GenerateTerms(String, Int32). * Active:script -- skrypt C# z argumentami (JObject state)->bool, aby sprawdzić, czy pole/wiadomość/potwierdzenie jest aktywne. * Validate:script -- Skrypt C# z argumentami (JObject state, wartość obiektu)->ValidateResult do weryfikacji wartości pola. * Define:script-- skrypt C# z argumentami (stan JObject, pole JObject<>) do dynamicznego definiowania ciała. * Before:[confirm|message, ...] -- Wiadomości lub potwierdzenia przed polem zawierającym ją. * After:[confirm|message, ...] -- Wiadomości lub potwierdzenia po polu zawierającym. * {Confirm:script|[string, ...], ...templateArgs} -- Za pomocą Przed/Po zdefiniuj potwierdzenie za pomocą skryptu C# z argumentem (stan JObject) lub przez zestaw wzorców, które będą losowo wybierane z opcjonalnymi argumentami szablonu. * {Message:script|[string, ...] ...templateArgs} -- Za pomocą Przed/Po zdefiniuj wiadomość za pomocą skryptu C# z argumentem (stan JObject) lub przez zestaw wzorców, które będą losowo wybierane z opcjonalnymi argumentami szablonu. * Dependencies:[string, ...]-- Fields that this field, message or confirm depends on.</p><p>Scripts can be any C# code you would find in a method body. You can add references through "References" and using through "Imports". Special global variables include: *stan wyboru-- internal dispatch for script to execute. *-- JObject form state bound for all scripts. *ifield -- <xref data-throw-if-not-resolved="true" uid="Microsoft.Bot.Builder.FormFlow.Advanced.IField1",> aby umożliwić rozumowanie nad aktualnym polem dla wszystkich skryptów z wyjątkiem %Message/Confirm prompt builders. * value -- wartość obiektu do zweryfikowania dla Validate. * field -- Field<T> umożliwiając dynamiczną aktualizację pola w Define. * context -- IDialogContext kontekst umożliwiający publikowanie wyników w OnCompletion.

    %Fields zdefiniowane przez tę klasę mają taką samą zdolność programowego rozszerzania lub nadpisywania definicji jak każde inne pole. Można je również zlokalizować w ten sam sposób.

Konstruktory

Nazwa Opis
FormBuilderJson(JObject)

Stwórz kreator formularzy JSON.

Pola

Nazwa Opis
_form

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

(Odziedziczone po FormBuilderBase<T>)

Właściwości

Nazwa Opis
Configuration

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

(Odziedziczone po FormBuilderBase<T>)
Schema

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

Metody

Nazwa Opis
AddRemainingFields(IEnumerable<String>)

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

Build(Assembly, String)

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

Confirm(MessageDelegate<T>, ActiveDelegate<T>, IEnumerable<String>)

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

(Odziedziczone po FormBuilderBase<T>)
Confirm(PromptAttribute, ActiveDelegate<T>, IEnumerable<String>)

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

(Odziedziczone po FormBuilderBase<T>)
Confirm(String, ActiveDelegate<T>, IEnumerable<String>)

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

(Odziedziczone po FormBuilderBase<T>)
Field(IField<T>)

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

(Odziedziczone po FormBuilderBase<T>)
Field(String, ActiveDelegate<JObject>, ValidateAsyncDelegate<JObject>)

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

Field(String, ActiveDelegate<T>, ValidateAsyncDelegate<T>)

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

(Odziedziczone po FormBuilderBase<T>)
Field(String, PromptAttribute, ActiveDelegate<JObject>, ValidateAsyncDelegate<JObject>)

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

Field(String, PromptAttribute, ActiveDelegate<T>, ValidateAsyncDelegate<T>)

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

(Odziedziczone po FormBuilderBase<T>)
Field(String, String, ActiveDelegate<JObject>, ValidateAsyncDelegate<JObject>)

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

Field(String, String, ActiveDelegate<T>, ValidateAsyncDelegate<T>)

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

(Odziedziczone po FormBuilderBase<T>)
HasField(String)

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

(Odziedziczone po FormBuilderBase<T>)
Message(MessageDelegate<T>, ActiveDelegate<T>, IEnumerable<String>)

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

(Odziedziczone po FormBuilderBase<T>)
Message(PromptAttribute, ActiveDelegate<T>, IEnumerable<String>)

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

(Odziedziczone po FormBuilderBase<T>)
Message(String, ActiveDelegate<T>, IEnumerable<String>)

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

(Odziedziczone po FormBuilderBase<T>)
OnCompletion(OnCompletionAsyncDelegate<T>)

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

(Odziedziczone po FormBuilderBase<T>)
Prompter(PromptAsyncDelegate<T>)

Zbuduj formularz, określając wiadomości, pola i potwierdzenia za pomocą schematu JSON lub programowo.

(Odziedziczone po FormBuilderBase<T>)

Dotyczy