Compartilhar via


Suporte para novos recursos do Workflow Foundation 4.5 no Designer de Fluxo de Trabalho Rehosted

O Windows Workflow Foundation (WF) 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 quais 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 interna 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 do What's New no Windows Workflow Foundation no .NET Framework 4.5.

Expressões em C#

Antes do .NET Framework 4.5, todas as expressões em fluxos de trabalho só podiam ser escritas no Visual Basic. No .NET Framework 4.5, as expressões do Visual Basic são usadas apenas para projetos criados usando o Visual Basic. Os projetos do Visual C# agora usam C# para expressões. Ao criar fluxos de trabalho no Visual Studio 2012, é fornecido um editor de expressões C# totalmente funcional, com recursos como realce de sintaxe e intellisense. Os projetos de fluxo de trabalho do C# criados em versões anteriores que usam expressões do Visual Basic continuarão funcionando.

Aviso

Não há suporte para expressões C# no designer hospedado novamente.

Novos recursos do Designer

Não há suporte para os recursos de Localização Rápida e Localização em Arquivos introduzidos com o .NET Framework 4.5 no designer hospedado novamente. A pesquisa de Toolbox tem suporte no designer hospedado novamente. Para obter mais informações sobre esses recursos, consulte Pesquisa de Designer.

Aviso

Localização Rápida e Localização em Arquivos não são suportadas no designer re-hospedado.

Excluir item do menu de contexto no designer de variáveis e argumentos

No .NET Framework 4, variáveis e argumentos só podiam ser excluídos no designer usando o teclado. A partir do .NET Framework 4.5, variáveis e argumentos podem ser excluídos usando 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 argumentos e variáveis.

Menu de contexto do Designer de Variáveis e Argumentos

Envolvimento automático com sequência

Como um fluxo de trabalho ou determinadas atividades de contêiner (como NoPersistScope) só podem conter uma atividade de corpo único, adicionar uma segunda atividade exigiu que o desenvolvedor excluísse a primeira atividade, adicionasse uma Sequence atividade e adicionasse ambas as atividades à atividade de sequência. A partir do .NET Framework 4.5, ao adicionar uma segunda atividade à superfície do designer, uma Sequence atividade será criada automaticamente para encapsular ambas as 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.

Uma atividade WriteLine no corpo de uma atividade NoPersistScope.

A captura de tela a seguir mostra a atividade de Sequence criada automaticamente no Body quando um segundo WriteLine é solto abaixo do primeiro.

Uma sequência criada automaticamente no corpo de um NoPersistScope.

Modo de Panorama

Para navegar com mais facilidade em um grande fluxo de trabalho no designer, o modo de painel 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 rotação que está localizado no canto inferior direito do designer de fluxo de trabalho.

O botão de panorâmica realçado no 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 seu redor (quando o modo de painel não está habilitado) ou segurando Ctrl e clicando nas atividades desejadas um a um. 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 de tópicos é 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 de Tópicos 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 visão de estrutura com um fluxo de trabalho sequencial.

Captura de tela da exibição de estrutura com um fluxo de trabalho sequencial no Visual Studio

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, essa personalização só tem suporte na 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 apropriado ShellHeaderItemsVisibility .

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.

Nó de início de fluxograma mostrando pontos de conexão automática

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.

Identificador de inserção automática para soltar atividades

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 dá suporte à adição de anotações para ajudar a acompanhar 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 ao designer.

Captura de tela que mostra o menu para adicionar notações.

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 ActivityDelegate objetos para expor pontos de execução em que 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 delegados de atividade usando o designer de fluxo de trabalho. Para obter mais informações, consulte Como definir e consumir delegados de atividades 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, os erros de validação de fluxo de trabalho não foram contados como erros de build durante a compilação de um projeto de fluxo de trabalho. Isso significava que a criação de um projeto de fluxo de trabalho poderia ter êxito mesmo quando houvesse erros de validação de fluxo de trabalho. No .NET Framework 4.5, erros de validação de fluxo de trabalho fazem com que o build falhe.

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 foram validados como um processo em primeiro plano, o que poderia potencialmente 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, para 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.

Exibir o estado localizado em um local separado em arquivos XAML

No .NET Framework 4, as informações de estado de exibição de um fluxo de trabalho são armazenadas no arquivo XAML em muitos locais diferentes. Isso é inconveniente para desenvolvedores que desejam ler XAML diretamente ou escrever código para remover as informações de estado de exibição. No .NET Framework 4.5, as informações de estado de 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 o estado de exibição completamente.

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 sã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 re-hospedado, defina TargetFrameworkName como ".Net Framework 4.5" ou defina membros individuais de DesignerConfigurationService para habilitar recursos específicos.

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 do computador de estado foram introduzidos como parte do .NET Framework 4.0.1 no Microsoft .NET Framework 4 Platform Update 1. Essa atualização incluiu várias novas classes e atividades que permitiram que os desenvolvedores criassem fluxos de trabalho de computador de estado. Essas classes e atividades foram atualizadas para o .NET Framework 4.5. As atualizações incluem:

  1. A capacidade de definir pontos de interrupção em estados

  2. A capacidade de copiar e colar transições no designer de fluxo de trabalho

  3. Suporte de designer para criação de transição do disparador compartilhado

  4. Atividades usadas para criar fluxos de trabalho do State Machine, incluindo: StateMachine, Statee Transition

A captura de tela a seguir mostra o fluxo de trabalho do computador de estado concluído da etapa Tutorial de IntroduçãoComo criar um fluxo de trabalho do computador de estado.

Ilustração que mostra o fluxo de trabalho da máquina de estado concluído.

Para obter mais informações sobre como criar fluxos de trabalho de computador de estado, consulte State Machine Workflows. 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 com definição de contratos primeiro permite ao desenvolvedor inicialmente definir um contrato no código e, em seguida, com alguns cliques no Visual Studio, gerar automaticamente um modelo de atividade na caixa de ferramentas que representa 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 garantir que essas operações sejam implementadas e que 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 do primeiro serviço de fluxo de trabalho do contrato, consulte Como criar um serviço de fluxo de trabalho que consome um contrato de serviço existente.

Aviso

Não há suporte para o desenvolvimento de fluxos de trabalho orientado por contrato no designer de fluxos de trabalho.