Suporte para novos recursos do Workflow Foundation 4.5 no Designer de Fluxo de Trabalho hospedado novamente
O WF (Windows Workflow Foundation) no .NET Framework 4.5 introduziu muitos novos recursos, incluindo vários aprimoramentos na experiência do designer de fluxo de trabalho. Este tópico detalha quais desses recursos têm suporte no designer hospedado novamente e que não têm suporte no momento.
Observação
Para obter uma lista de todos os novos recursos do WF (Windows Workflow Foundation) introduzidos no .NET Framework 4.5, incluindo aqueles não relacionados à nova hospedagem do designer, consulte Novidades no Windows Workflow Foundation no .NET Framework 4.5.
Atividades
A biblioteca de atividades embutida contém novas atividades e novos recursos para atividades existentes. Todas essas novas atividades têm suporte no designer hospedado novamente. Para obter mais informações sobre essas novas atividades, consulte a seção Atividades de Novidades no Windows Workflow Foundation no .NET Framework 4.5.
Expressões C#
Antes do .NET Framework 4.5, todas as expressões em fluxos de trabalho podiam ser gravadas no Visual Basic. No .NET Framework 4.5, as expressões do Visual Basic são usadas apenas para os projetos criados usando o Visual Basic. Os projetos do Visual C# agora usam o C# para expressões. Ao criar fluxos de trabalho no Visual Studio 2012, um editor de expressão C# completamente funcional é fornecido com recursos como realce de gramática e intellisense. Os projetos do fluxo de trabalho C# criados em versões anteriores que usam expressões do Visual Basic continuarão funcionando.
Aviso
As expressões C# não têm suporte no designer hospedado novamente.
Novos recursos do designer
Pesquisa do designer
Os recursos Localização Rápida e Localizar em Arquivos introduzidos com o .NET Framework 4.5 não têm suporte no designer hospedado novamente. A pesquisa de Toolbox
tem suporte no designer hospedado novamente. Para obter mais informações sobre esses recursos, consulte Pesquisa do Designer.
Aviso
Localização Rápida e Localizar em Arquivos não têm suporte no designer hospedado novamente.
Excluir item de menu de contexto no designer de argumento e variável
No .NET Framework 4, as variáveis e os argumentos podem ser excluídos no designer apenas usando o teclado. Começando no .NET Framework 4.5, as variáveis e os argumentos podem ser excluídos com o menu de contexto. Esse recurso tem suporte no designer hospedado novamente.
A captura de tela a seguir mostra o menu de contexto do designer de variável e argumento.
Envolvimento automático com sequência
Como um fluxo de trabalho ou algumas atividades do contêiner (como NoPersistScope) só podem conter uma única atividade do corpo, adicionar uma segunda atividade exigia que o desenvolvedor excluísse a primeira atividade, adicionasse uma atividade Sequence e, em seguida, adicionasse as duas atividades para a atividade de sequência. Começando no .NET Framework 4.5, ao adicionar uma segunda atividade para a superfície do designer, uma atividade Sequence
será criada automaticamente para incluir as duas atividades. Esse recurso tem suporte no designer hospedado novamente.
A captura de tela a seguir mostra uma atividade de WriteLine
no Body
de um NoPersistScope
.
A captura de tela a seguir mostra a atividade de Sequence
criada automaticamente no Body
quando um segundo WriteLine
é solto abaixo do primeiro.
Modo panorâmico
Para navegar mais facilmente um grande fluxo de trabalho no designer, o modo panorâmico pode ser habilitado, permitindo que o desenvolvedor clique e arraste para mover a parte visível do fluxo de trabalho, em vez de precisar usar as barras de rolagem. O botão para ativar o modo de superfície está no canto inferior direito do designer. Esse recurso tem suporte no designer hospedado novamente.
A captura de tela a seguir mostra o botão de panorâmica qual está localizado no canto inferior direito do designer de fluxo de trabalho.
O botão do meio do mouse ou a barra de espaço também podem ser usados para executar uma panorâmica do designer de fluxo de trabalho.
Seleção múltipla
Várias atividades podem ser selecionadas ao mesmo tempo, arrastando um retângulo ao redor delas (quando o modo panorâmico não está habilitado), ou mantendo pressionada a tecla CTRL e clicando nas atividades desejadas. Esse recurso tem suporte no designer hospedado novamente.
Várias seleções de atividade também podem ser arrastadas e soltadas dentro do designer, e também podem ser interagidas usando o menu de contexto.
Exibição de destaque de itens de fluxo de trabalho
Para facilitar a navegação de fluxos de trabalho hierárquicos, os componentes de um fluxo de trabalho são mostrados em uma exibição de destaque em estilo de árvore. A exibição de estrutura é exibida no modo de exibição da Estrutura do Documento. Para abrir essa exibição no Visual Studio, no menu superior, selecione Exibir, Outras Janelas, Estrutura do Documento ou pressione Ctrl W,U. Clicar em um nó na exibição de destaque navegará para a atividade correspondente no designer de fluxo de trabalho, e a exibição da estrutura será atualizada para mostrar as atividades que estão selecionadas no designer. Esse recurso tem suporte no designer hospedado novamente.
A captura de tela a seguir do fluxo de trabalho concluído do Tutorial de Introdução mostra a exibição de estrutura com um fluxo de trabalho sequencial.
Mais controle da visibilidade da barra de shell e dos itens de cabeçalho
Em um designer hospedado novamente, alguns dos controles padrão de interface do usuário não podem ter o significado de um fluxo de trabalho específico, e podem ser desativados. No .NET Framework 4.5, essa personalização tem suporte apenas da barra de shell na parte inferior do designer. No .NET Framework 4.5, a visibilidade dos itens de cabeçalho do shell na parte superior do designer pode ser ajustada definindo WorkflowShellHeaderItemsVisibility com o valor ShellHeaderItemsVisibility apropriado.
Conexão automática e inserção automática em fluxograma e fluxos de trabalho de máquina de estado
No .NET Framework 4.5, as conexões entre nós em um fluxo de trabalho de fluxograma precisavam ser adicionadas manualmente. No .NET Framework 4.5, os nós de fluxograma e da máquina de estado têm pontos de conexão automática que ficam visíveis quando uma atividade é arrastada da caixa de ferramentas na superfície do designer. Soltar uma atividade em um destes pontos adiciona automaticamente a atividade junto com a conexão necessária.
A captura de tela a seguir mostra os pontos de anexação que ficam visíveis quando uma atividade é arrastada da caixa de ferramentas.
As atividades também podem ser arrastadas em conexões entre nós de fluxograma e estados para inserção automática do nó entre dois outros nós. A captura de tela a seguir mostra a linha de conexão realçada em que as atividades podem ser arrastadas da caixa de ferramentas e soltas.
A conexão automática e a inserção automática têm suporte no designer hospedado novamente.
Anotações do designer
Para facilitar o desenvolvimento de fluxos de trabalho maiores, o designer agora permite adicionar anotações para ajudar a controlar o processo de design. A anotação pode ser adicionada a atividades, estados, nós de fluxograma, variáveis e argumentos. A captura de tela a seguir mostra o menu de contexto usado para adicionar anotações para o designer.
As anotações do designer não têm suporte no designer hospedado novamente.
Definir e consumir objetos ActivityDelegate no designer
As atividades no .NET Framework 4 usavam objetos ActivityDelegate para expor pontos de execução onde outras partes do fluxo de trabalho poderiam interagir com a execução de um fluxo de trabalho, mas o uso desses pontos de execução geralmente exigia uma boa quantidade de código. Nesta versão, os desenvolvedores podem definir e consumir representantes de atividade usando o designer de fluxo de trabalho. Para saber mais, confira Como definir e consumir delegados de atividade no Designer de Fluxo de Trabalho.
Os delegados de atividade não têm suporte no designer hospedado novamente.
Validação de tempo de compilação
No .NET Framework 4.5, os erros de validação do fluxo de trabalho não eram contados como erros de compilação durante a compilação de um projeto de fluxo de trabalho. Isso significava que criar um projeto de fluxo de trabalho poderia ter êxito mesmo se houvesse erros de validação do fluxo de trabalho. No .NET Framework 4.5, os erros de validação do fluxo de trabalho causam a falha na compilação.
Aviso
A validação de tempo de compilação não tem suporte no designer hospedado novamente.
Validação em segundo plano do tempo de design
No .NET Framework 4, os fluxos de trabalho eram validados como um processo de primeiro plano, o que poderia bloquear a interface do usuário durante processos de validação complexos ou demorados. A validação do fluxo de trabalho agora ocorre em um thread em segundo plano, de modo que a interface do usuário não seja bloqueada.
A validação em segundo plano do tempo de design não tem suporte no designer hospedado novamente.
Estado de exibição localizado em um local separado em arquivos XAML
No .NET Framework 4, as informações de estado de exibição para um fluxo de trabalho são armazenadas no arquivo XAML em muitos lugares diferentes. Isso é inconveniente para os desenvolvedores que desejam ler XAML diretamente, ou gravar código para remover informações de estado de exibição. No .NET Framework 4.5, as informações de estado da exibição no arquivo XAML são serializadas como um elemento separado no arquivo XAML. Os desenvolvedores podem localizar e editar facilmente as informações de estado de exibição de uma atividade ou remover completamente o estado da exibição.
Esse recurso tem suporte no designer de fluxo de trabalho hospedado novamente.
Aceitação dos recursos do Workflow 4.5 no designer hospedado novamente
Para preservar a compatibilidade com versões anteriores, alguns novos recursos incluídos no .NET Framework 4.5 não estão habilitados por padrão no designer hospedado novamente. Este é para garantir que aplicativos existentes que usam o designer hospedado novamente não sejam interrompidos ao atualizar para a versão mais recente. Para habilitar novos recursos no designer hospedado novamente, defina TargetFrameworkName como ".NET Framework 4.5" ou defina membros individuais do conjunto de DesignerConfigurationService para habilitar recursos individuais.
Novos modelos de desenvolvimento de fluxo de trabalho
Além do fluxograma e de modelos sequenciais de desenvolvimento de fluxo de trabalho, esta versão inclui fluxos de trabalho da Máquina de Estado e serviços de fluxo de trabalho de primeiro contrato.
Fluxo de trabalho de máquina de estado
Os fluxos de trabalho da máquina de estado foram introduzidos como parte do .NET Framework 4.0.1 na Atualização 1 da plataforma do Microsoft .NET Framework 4. Essa atualização incluiu várias novas classes e atividades que permitiram que os desenvolvedores criassem fluxos de trabalho de máquina do estado. Essas classes e atividades foram atualizadas para o .NET Framework 4.5. As atualizações incluem:
A capacidade de definir pontos de interrupção em estados
A capacidade de copiar e colar transições no designer de fluxo de trabalho
Suporte de designer para criação de transição do disparador compartilhado
Atividades usadas para criar fluxos de trabalho da máquina de estado, incluindo: StateMachine, State e Transition.
A captura de tela a seguir mostra o fluxo de trabalho da máquina de estado concluído da etapa Como criar um fluxo de trabalho da máquina de estado do Tutorial de introdução.
Para obter mais informações sobre como criar fluxos de trabalho da máquina de estado, consulte Fluxos de trabalho da máquina de estado. Os fluxos de trabalho da máquina de estado têm suporte no designer hospedado novamente.
Desenvolvimento de fluxo de trabalho de primeiro contrato
A ferramenta de desenvolvimento de fluxo de trabalho de primeiro contrato permite que o desenvolvedor crie um contrato no código primeiro e, em seguida, com alguns cliques no Visual Studio, gere automaticamente um modelo de atividade na caixa de ferramentas representando cada operação. Essas atividades são então usadas para criar um fluxo de trabalho que implementa as operações definidas pelo contrato. O designer de fluxo de trabalho validará o serviço de fluxo de trabalho para assegurar que essas operações sejam implementadas e a assinatura do fluxo de trabalho corresponda à assinatura do contrato. O desenvolvedor também pode associar um serviço de fluxo de trabalho a uma coleção de contratos implementados. Para obter mais informações sobre o desenvolvimento de serviços de fluxo de trabalho de primeiro contrato, consulte Como criar um serviço de fluxo de trabalho que consome um contrato de serviço existente.
Aviso
O desenvolvimento de fluxo de trabalho de primeiro contrato não tem suporte no designer de fluxo de trabalho.