Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Namespace: Microsoft.Azure. Workflows.Sdk
Fornisce metodi di fabbrica per creare azioni di workflow integrate che si eseguono direttamente nel runtime di Logic Apps. Accedi a questa classe tramite WorkflowActions utilizzando WorkflowActions.BuiltIn per creare trasformazione dati, HTTP, risposte, workflow annidati, codice personalizzato e azioni agent.
Usage
// Built-in actions are accessed via WorkflowActions.BuiltIn
var compose = WorkflowActions.BuiltIn.Compose(inputs: () => "Hello").WithName("Greet");
var http = WorkflowActions.BuiltIn.HttpAction(
uri: () => new Uri("https://api.example.com"),
method: () => HttpMethod.Post,
requestBody: () => new { message = "test" }).WithName("PostData");
var response = WorkflowActions.BuiltIn.Response(
responseBody: () => $"{http.Body}").WithName("Reply");
// Chain actions in a workflow
var trigger = WorkflowTriggers.BuiltIn.CreateHttpTrigger();
trigger.Then(compose).Then(http).Then(response);
Properties
| Name | Description | TIPO | Required |
|---|---|---|---|
| Controllo | Ottiene la fabbrica per azioni di controllo del flusso come Scope, Condition, ForEach, Till, Switch e Terminate. | WorkflowControlControlActions | No |
| variables | Ottiene la fabbrica per azioni variabili come inizializza, imposta, incremento, decrementazione e aggiunta. | WorkflowVariableActions | No |
Methods
Compose
Crea un'azione Compose e restituisce un IOutputWorkflowAction<JToken> il cui output può essere riferito da azioni successive.
IOutputWorkflowAction<JToken> Compose(Expression<Func<string>> inputs)
| Name | Description | TIPO | Required |
|---|---|---|---|
| inputs | Espressione per gli input da comporre. | Stringa func<di espressione<>> | Sì |
var compose = WorkflowActions.BuiltIn.Compose(inputs: () => "Hello World").WithName("Greet");
Compone T(input Funzione<> T di Espressione<)<>>
Crea un'azione Compose tipizzata e restituisce un IOutputWorkflowAction<T> per riferimenti di output fortemente tipizzati.
IOutputWorkflowAction<T> Compose<T>(Expression<Func<T>> input)
| Name | Description | TIPO | Required |
|---|---|---|---|
| Input | Espressione per l'input tipizzato da comporre. | Funzione di espressione<<T>> | Sì |
var typed = WorkflowActions.BuiltIn.Compose<int>(input: () => 42).WithName("Answer");
HttpAction
Crea un'azione HTTP e restituisce un IBodyWorkflowAction<JToken> per chiamare endpoint esterni.
IBodyWorkflowAction<JToken> HttpAction(Expression<Func<Uri>> uri, Expression<Func<HttpMethod>> method, Expression<Func<object>> requestBody = null, Expression<Func<Dictionary<string, string>>> queries = null, Expression<Func<Dictionary<string, string>>> headers = null)
| Name | Description | TIPO | Required |
|---|---|---|---|
| Uri | Espressione per l'URI della richiesta. | Funzione<di espressione<Uri>> | Sì |
| method | Espressione per il metodo HTTP. | Funzione<di espressione<HttpMethod>> | Sì |
| requestBody | Espressione per il corpo della richiesta. | Oggetto func<di espressione<>> | No |
| queries | Espressione per i parametri della query. | Stringa di dizionario<Func<di espressione<, stringa>>> | No |
| headers | Espressione per le intestazioni delle richieste. | Stringa di dizionario<Func<di espressione<, stringa>>> | No |
var http = WorkflowActions.BuiltIn.HttpAction(
uri: () => new Uri("https://api.example.com/data"),
method: () => HttpMethod.Get,
headers: () => new Dictionary<string, string> { ["Authorization"] = "Bearer token" })
.WithName("CallAPI");
Risposta
Crea un'azione di risposta e restituisce un IBodyWorkflowAction<JToken> per inviare una risposta HTTP da un flusso di lavoro di richiesta.
IBodyWorkflowAction<JToken> Response(Expression<Func<HttpStatusCode>> statusCode = null, Expression<Func<object>> responseBody = null, Expression<Func<Dictionary<string, string>>> headers = null, Expression<Func<JToken>> schema = null)
| Name | Description | TIPO | Required |
|---|---|---|---|
| Codice di stato | Espressione per il codice di stato HTTP. | Expression<Func<HttpStatusCode>> | No |
| Corpo della risposta | Espressione per il corpo di risposta. | Oggetto func<di espressione<>> | No |
| headers | Espressione per le intestazioni delle risposte. | Stringa di dizionario<Func<di espressione<, stringa>>> | No |
| schema | Espressione per lo schema di risposta. | Funzione<di espressione<JToken>> | No |
var response = WorkflowActions.BuiltIn.Response(
statusCode: () => HttpStatusCode.OK,
responseBody: () => "Success").WithName("SendResponse");
CustomCode<T>(Func<WorkflowContext, richiamo Task<T>> )
Crea un'azione di codice personalizzata e restituisce un IBodyWorkflowAction<T> che esegue C# inline su un WorkflowContext.
IBodyWorkflowAction<T> CustomCode<T>(Func<WorkflowContext, Task<T>> callback)
| Name | Description | TIPO | Required |
|---|---|---|---|
| callback | Il callback asincrono per eseguire. | Func<WorkflowContest, Task<T>> | Sì |
var custom = WorkflowActions.BuiltIn.CustomCode<string>(async (context) =>
{
var result = await context.GetTriggerResults();
return "Processed";
}).WithName("RunCode");
NestedWorkflow
Crea un'azione di workflow annidata e restituisce un IBodyWorkflowAction<JToken> che invoca un altro workflow per nome di riferimento.
IBodyWorkflowAction<JToken> NestedWorkflow(Expression<Func<string>> workflowReferenceName, Expression<Func<object>> requestBody = null, Expression<Func<Dictionary<string, string>>> headers = null)
| Name | Description | TIPO | Required |
|---|---|---|---|
| workflowReferenceName | Riferimento al nome del flusso di lavoro figlio. | Stringa func<di espressione<>> | Sì |
| requestBody | Richiedi il corpo per il flusso di lavoro del figlio. | Oggetto func<di espressione<>> | No |
| headers | Richiedi le intestazioni per il flusso di lavoro figlio. | Stringa di dizionario<Func<di espressione<, stringa>>> | No |
var nested = WorkflowActions.BuiltIn.NestedWorkflow(
workflowReferenceName: () => "ChildWorkflow",
requestBody: () => new { name = "test" }).WithName("CallChild");
Agente
Crea un AgentAction che invia messaggi prompt a un modello AI configurato per un flusso di lavoro agente.
AgentAction Agent(AgentModelType agentModelType, string deploymentId, AgentModelSettings agentModelSettings, string connectionName, Expression<Func<AgentPromptMessage[]>> messages)
| Name | Description | TIPO | Required |
|---|---|---|---|
| agentModelType | Il modello di IA, come OpenAI. | AgentModelType | Sì |
| deploymentId | L'identificatore di deployment del modello. | corda | Sì |
| agentModelSettings | Configurazione per il modello agente. | AgentModelSettings | Sì |
| Connectionname | Il nome della connessione per il servizio AI. | corda | Sì |
| messages | Espressione per l'array dei messaggi di prompt. | MessaggioPrompt di Espressione<Func<AgentePrompt[]>> | Sì |
var agent = WorkflowActions.BuiltIn.Agent(
agentModelType: AgentModelType.OpenAI,
deploymentId: "gpt-4",
agentModelSettings: new AgentModelSettings(),
connectionName: "openai-connection",
messages: () => new[] { new AgentPromptMessage { Role = "system", Content = "You are helpful" } });
Contenuto correlato
- Definizione della classe AgentToolContext
- Definizione dell'interfaccia IChainableNode
- Definizione dell'Interfaccia IVariableWorkflowAction
- Definizione dell'interfaccia IWorkflowAction
- Definizione dell'interfaccia IWorkflowOperation
- Definizione dell'interfaccia IWorkflowProvider
- Definizione dell'interfaccia IWorkflowTrigger
- Definizione della classe OperationChain
- Definizione delle Interfacce di Azione del Workflow Tipizzato
- Definizione delle Interfacce di Trigger del Flusso di Lavoro Tipizzato
- Definizione della classe WorkflowActionBase
- Definizione della classe WorkflowActions
- Definizione di classe WorkflowBuiltInTriggers
- Definizione della classe WorkflowContext
- Definizione della classe WorkflowControlControlActions
- Definizione della classe WorkflowFactory
- Definizione della classe WorkflowManagedActions
- Definizione della classe WorkflowManagedTriggers
- Definizione di classe WorkflowProviderExtensions
- Definizione della classe WorkflowTriggerBase
- Definizione di classe WorkflowTriggers
- Definizione della classe WorkflowVariableActions