FormBuilderJson Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente.
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)
- Ereditarietà
Commenti
Definire un modulo tramite schema JSON con annotazioni aggiuntive facoltative che corrispondono agli attributi forniti per C#.
%FormFlow usa una serie di parole chiave dello schema JSON standard includono:
-
type
-- Definisce il tipo di campi. *enum
-- Definisce i valori di campo possibili. *minimum
-- Definisce il valore minimo consentito come descritto in NumericAttribute. *maximum
-- Definisce il valore massimo consentito come descritto in NumericAttribute. *required
-- Definisce i campi necessari. *pattern
-- Per i campi stringa verrà usato per convalidare il modello immesso come descritto in PatternAttribute.I modelli e le richieste usano lo stesso vocabolario di TemplateAttribute e PromptAttribute. I nomi delle proprietà sono gli stessi e i valori sono uguali a quelli dell'enumerazione C# sottostante. Ad esempio, per definire un modello per eseguire l'override del NotUnderstood modello e specificare un modello TemplateBaseAttribute.ChoiceStyle, inserire questo modello nello schema: ~~~ "Templates":{ "NotUnderstood": { Pattern: ["I don'i don't get"], "ChoiceStyle":"Auto"}} ~~~
%Estensioni definite nella radice dello schema *
OnCompletion: script
-- Script C# con argomenti (IDialogContext contesto, stato JObject) per il completamento del modulo. *References: [assemblyReference, ...]
-- Definire i riferimenti da includere negli script. I percorsi devono essere assoluti o relativi alla directory corrente. Per impostazione predefinita, Microsoft.Bot.Builder.dll è incluso. *Imports: [import, ...]
-- Definire le importazioni da includere negli script con gli usi. Per impostazione predefinita, questi spazi dei nomi sono inclusi: Microsoft.Bot.Builder, Microsoft.Bot.Builder.Dialogs, Microsoft.Bot.Builder.FormFlow, Microsoft.Bot.Builder.FormFlow.Advanced, System.Collections.Generic, System.Linq%Extensions definite nella radice di uno schema o come peer della proprietà "type". *
Templates:{TemplateUsage: { Patterns:[string, ...], <args> }, ...}
-- Definire i modelli. *Prompt: { Patterns:[string, ...] <args>}
-- Definire un prompt.%Extensions presenti in una descrizione della proprietà come peers to the "type" property of a JSON Schema. *
DateTime:bool
-- Contrassegna un campo come campo DateTime. *Describe:string
-- Descrizione di un campo come descritto in DescribeAttribute. *Terms:[string,...]
-- Espressioni regolari per la corrispondenza di un valore di campo come descritto in TermsAttribute. *MaxPhrase:int
-- Questo eseguirà i termini GenerateTerms(String, Int32) per espanderli. *Values:{ string: {Describe:string, Terms:[string, ...], MaxPhrase}, ...}
-- La stringa deve essere trovata nei tipi "enumerazione" e consente di eseguire l'override delle descrizioni e dei termini generati automaticamente. Se viene specificato MaxPhrase, i termini vengono passati tramite GenerateTerms(String, Int32). *Active:script
-- Script C# con argomenti (stato JObject)->bool per verificare se il campo/messaggio/conferma è attivo. *Validate:script
-- Script C# con argomenti (stato JObject, valore oggetto)->ValidateResult per convalidare un valore di campo. *Define:script
-- Script C# con argomenti (stato JObject,<campo JObject> ) per definire dinamicamente un campo. *Before:[confirm|message, ...]
-- Messaggi o conferme prima del campo contenente. *After:[confirm|message, ...]
-- Messaggi o conferme dopo il campo contenente. *{Confirm:script|[string, ...], ...templateArgs}
-- Con Before/After definire una conferma tramite script C# con argomento (stato JObject) o tramite un set di modelli selezionati in modo casuale con argomenti di modello facoltativi. *{Message:script|[string, ...] ...templateArgs}
-- Con Before/After definire un messaggio tramite script C# con argomento (stato JObject) o tramite un set di modelli selezionati in modo casuale con argomenti modello facoltativi. *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: *
stato di scelta-- internal dispatch for script to execute. *
ifield-- <xref data-throw-if-not-resolved="true" uid="Microsoft.Bot.Builder.FormFlow.Advanced.IField
1"> per consentire il motivo sul campo corrente per tutti gli script tranne %Message/Confirm prompt builders.-- JObject form state bound for all scripts. *
*value
-- valore dell'oggetto da convalidare per Convalida. *field
-- Field<T> per consentire l'aggiornamento dinamico di un campo in Definisci. *context
-- IDialogContext contesto per consentire la registrazione dei risultati in OnCompletion.%Campi definiti tramite questa classe hanno la stessa possibilità di estendere o eseguire l'override delle definizioni in modo programmatico come qualsiasi altro campo. Possono anche essere localizzati allo stesso modo.
Costruttori
FormBuilderJson(JObject) |
Creare un generatore di moduli JSON. |
Campi
_form |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. (Ereditato da FormBuilderBase<T>) |
Proprietà
Configuration |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. (Ereditato da FormBuilderBase<T>) |
Schema |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. |
Metodi
AddRemainingFields(IEnumerable<String>) |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. |
Build(Assembly, String) |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. |
Confirm(MessageDelegate<T>, ActiveDelegate<T>, IEnumerable<String>) |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. (Ereditato da FormBuilderBase<T>) |
Confirm(PromptAttribute, ActiveDelegate<T>, IEnumerable<String>) |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. (Ereditato da FormBuilderBase<T>) |
Confirm(String, ActiveDelegate<T>, IEnumerable<String>) |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. (Ereditato da FormBuilderBase<T>) |
Field(IField<T>) |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. (Ereditato da FormBuilderBase<T>) |
Field(String, ActiveDelegate<JObject>, ValidateAsyncDelegate<JObject>) |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. |
Field(String, ActiveDelegate<T>, ValidateAsyncDelegate<T>) |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. (Ereditato da FormBuilderBase<T>) |
Field(String, PromptAttribute, ActiveDelegate<JObject>, ValidateAsyncDelegate<JObject>) |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. |
Field(String, PromptAttribute, ActiveDelegate<T>, ValidateAsyncDelegate<T>) |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. (Ereditato da FormBuilderBase<T>) |
Field(String, String, ActiveDelegate<JObject>, ValidateAsyncDelegate<JObject>) |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. |
Field(String, String, ActiveDelegate<T>, ValidateAsyncDelegate<T>) |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. (Ereditato da FormBuilderBase<T>) |
HasField(String) |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. (Ereditato da FormBuilderBase<T>) |
Message(MessageDelegate<T>, ActiveDelegate<T>, IEnumerable<String>) |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. (Ereditato da FormBuilderBase<T>) |
Message(PromptAttribute, ActiveDelegate<T>, IEnumerable<String>) |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. (Ereditato da FormBuilderBase<T>) |
Message(String, ActiveDelegate<T>, IEnumerable<String>) |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. (Ereditato da FormBuilderBase<T>) |
OnCompletion(OnCompletionAsyncDelegate<T>) |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. (Ereditato da FormBuilderBase<T>) |
Prompter(PromptAsyncDelegate<T>) |
Compilare un modulo specificando messaggi, campi e conferme tramite lo schema JSON o programmatamente. (Ereditato da FormBuilderBase<T>) |