WorkflowRuntime Constructores
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Inicializa una nueva instancia de la clase WorkflowRuntime.
Sobrecargas
WorkflowRuntime() |
Inicializa una nueva instancia de la clase WorkflowRuntime. |
WorkflowRuntime(String) |
Inicializa una nueva instancia de la clase WorkflowRuntime utilizando la sección especificada del archivo de configuración de aplicación. |
WorkflowRuntime(WorkflowRuntimeSection) |
Inicializa una nueva instancia de la clase WorkflowRuntime utilizando los valores del WorkflowRuntimeSection especificado. |
WorkflowRuntime()
Inicializa una nueva instancia de la clase WorkflowRuntime.
public:
WorkflowRuntime();
public WorkflowRuntime ();
Public Sub New ()
Ejemplos
El ejemplo de código siguiente muestra cómo se puede utilizar la funcionalidad WorkflowRuntime desde un host de flujos de trabajo. Proporciona un ejemplo de cómo utilizar el constructor WorkflowRuntime para crear una instancia de WorkflowRuntime y tener acceso a sus métodos y eventos.
Este ejemplo de código forma parte del ejemplo Cancelar un flujo de trabajo .
static void Main()
{
string connectionString = "Initial Catalog=SqlPersistenceService;Data Source=localhost;Integrated Security=SSPI;";
using (WorkflowRuntime workflowRuntime = new WorkflowRuntime())
{
ExternalDataExchangeService dataService = new ExternalDataExchangeService();
workflowRuntime.AddService(dataService);
dataService.AddService(expenseService);
workflowRuntime.AddService(new SqlWorkflowPersistenceService(connectionString));
workflowRuntime.StartRuntime();
workflowRuntime.WorkflowCompleted += OnWorkflowCompleted;
workflowRuntime.WorkflowTerminated += OnWorkflowTerminated;
workflowRuntime.WorkflowIdled += OnWorkflowIdled;
workflowRuntime.WorkflowAborted += OnWorkflowAborted;
Type type = typeof(SampleWorkflow1);
WorkflowInstance workflowInstance = workflowRuntime.CreateWorkflow(type);
workflowInstance.Start();
waitHandle.WaitOne();
workflowRuntime.StopRuntime();
}
}
Shared Sub Main()
Dim connectionString As String = "Initial Catalog=SqlPersistenceService;Data Source=localhost;Integrated Security=SSPI;"
Using workflowRuntime As New WorkflowRuntime()
Dim dataService As New ExternalDataExchangeService()
workflowRuntime.AddService(dataService)
dataService.AddService(expenseService)
workflowRuntime.AddService(New SqlWorkflowPersistenceService(connectionString))
AddHandler workflowRuntime.WorkflowCompleted, AddressOf OnWorkflowCompleted
AddHandler workflowRuntime.WorkflowTerminated, AddressOf OnWorkflowTerminated
AddHandler workflowRuntime.WorkflowIdled, AddressOf OnWorkflowIdled
AddHandler workflowRuntime.WorkflowAborted, AddressOf OnWorkflowAborted
Dim workflowInstance As WorkflowInstance
workflowInstance = workflowRuntime.CreateWorkflow(GetType(SampleWorkflow))
workflowInstance.Start()
waitHandle.WaitOne()
workflowRuntime.StopRuntime()
End Using
End Sub
Comentarios
WorkflowRuntime se inicializa con los valores de propiedad predeterminados y contiene los servicios centrales predeterminados. Para configurar también el motor en tiempo de ejecución de flujo de trabajo, puede agregar y quitar los servicios utilizando AddService y RemoveService, y puede establecer Name. Una vez configurado WorkflowRuntime, llame al StartRuntime para iniciar el motor en tiempo de ejecución de flujo de trabajo y sus servicios.
En la siguiente tabla se muestran los valores iniciales de las propiedades de una instancia de la clase WorkflowRuntime.
Propiedad | Valor inicial |
---|---|
Name | "WorkflowRuntime" |
IsStarted | false |
Los servicios centrales predeterminados son: DefaultWorkflowCommitWorkBatchService y DefaultWorkflowSchedulerService.
Se aplica a
WorkflowRuntime(String)
Inicializa una nueva instancia de la clase WorkflowRuntime utilizando la sección especificada del archivo de configuración de aplicación.
public:
WorkflowRuntime(System::String ^ configSectionName);
public WorkflowRuntime (string configSectionName);
new System.Workflow.Runtime.WorkflowRuntime : string -> System.Workflow.Runtime.WorkflowRuntime
Public Sub New (configSectionName As String)
Parámetros
- configSectionName
- String
El nombre de una sección workflowSettings
válida en el archivo de configuración de la aplicación.
Excepciones
configSectionName
es una referencia nula (Nothing
en Visual Basic).
Una sección workflowSettings
válida no se pudo encontrar en el archivo de configuración de la aplicación.
Un WorkflowRuntime ya existe para este dominio de aplicación.
Comentarios
WorkflowRuntime se inicializa según los valores de la sección especificada por configSectionName
en el archivo de configuración de la aplicación.
configSectionName
debe corresponder a una sección válida workflowSettings
de un archivo de configuración.
Cuando el motor en tiempo de ejecución del flujo de trabajo se configura mediante un archivo de configuración de la aplicación, carga y crea instancias de las clases de los tipos enumerados en la Services
sección del archivo de configuración. Cuando el motor en tiempo de ejecución de flujo de trabajo construye estas clases, busca constructores de clase con las firmas siguientes en este orden:
Servicio (tiempo de ejecución WorkflowRuntime, parámetros NameValueCollection)
Servicio (tiempo de ejecución WorkflowRuntime)
Servicio (parámetros NameValueCollection)
Servicio()
Todas las clases de servicio cargadas desde un archivo de configuración deben implementar por lo menos una de estas firmas de constructor.
Para obtener más información, vea WorkflowRuntimeSection.
Se aplica a
WorkflowRuntime(WorkflowRuntimeSection)
Inicializa una nueva instancia de la clase WorkflowRuntime utilizando los valores del WorkflowRuntimeSection especificado.
public:
WorkflowRuntime(System::Workflow::Runtime::Configuration::WorkflowRuntimeSection ^ settings);
public WorkflowRuntime (System.Workflow.Runtime.Configuration.WorkflowRuntimeSection settings);
new System.Workflow.Runtime.WorkflowRuntime : System.Workflow.Runtime.Configuration.WorkflowRuntimeSection -> System.Workflow.Runtime.WorkflowRuntime
Public Sub New (settings As WorkflowRuntimeSection)
Parámetros
- settings
- WorkflowRuntimeSection
Objeto WorkflowRuntimeSection.
Excepciones
settings
es una referencia nula (Nothing
en Visual Basic).
Un WorkflowRuntime ya existe para este dominio de aplicación.
Comentarios
Este constructor proporciona un mecanismo para configurar el motor en tiempo de ejecución de flujo de trabajo mediante una llamada al método única para los hosts que no utilizan un archivo de configuración de aplicación. Hay muchas razones para no utilizar el archivo de configuración de aplicación. Un host puede ejecutarse en un entorno que no permita la utilización de archivos de configuración; por ejemplo, en entornos de confianza que no permiten la lectura del archivo de configuración de la aplicación por razones de seguridad. Además, puede que un host quiera utilizar un mecanismo de configuración de propiedad; por ejemplo, el host puede almacenar la configuración del motor en tiempo de ejecución de flujo de trabajo en una base de datos SQL.
El motor en tiempo de ejecución de flujo de trabajo carga y crea instancias de clases de los tipos contenidos en WorkflowRuntimeSection.Services. Cuando el motor en tiempo de ejecución de flujo de trabajo construye estas clases, busca constructores de clase con las firmas siguientes en este orden:
Servicio (tiempo de ejecución WorkflowRuntime, parámetros NameValueCollection)
Servicio (tiempo de ejecución WorkflowRuntime)
Servicio (parámetros NameValueCollection)
Servicio()
Todas las clases de servicio especificadas en settings
deben implementar por lo menos una de estas firmas de constructor.