Artigo: 935354 - Última revisão: quarta-feira, 16 de Maio de 2007 - Revisão: 1.4

Microsoft Windows Workflow Foundation Step by Step comentários e correcções

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.

Nesta página

Expandir tudo | Reduzir tudo

Sumário

Este artigo contém comentários, correcções e informações sobre erros conhecidos relacionados com o livro do Microsoft Press Microsoft Windows Workflow Foundation Step by Step , 0-7356-2335-X.

Abrange os seguintes tópicos:

  • CD-ROM: Revisão código para os capítulos 6, 8 e 14
  • Página xxvii: referência a conteúdo de pesquisa online está incorrecta
  • Página 7: Correcção para localização de transferência do Windows SDK
  • Página 19: Em falta caracteres de expressões normais
  • Página 24: Correcção a instância de WorkflowRuntime
  • 28 De página: Correcção para o WorkflowRuntime instância
  • Página 36: _waitHandle deve ser waitHandle
  • Página 38: "Criar uma única instância do fluxo de trabalho-Runtime por domínio de aplicação" deve ser "Criar uma instância do tempo de execução de fluxo de trabalho"
  • Página 50: Correcção para o passo 2
  • Página 50: Caixa de sugestão para eliminar
  • Página 61: ? classe MyClass ? deve ser ? classe MyClass: DependencyObject ?
  • Página 76: ActivityTrackingPoint deve ser ActivityTrackPoint
  • Página 88: GetWorkflowRuntime deve ser WorkflowRuntime
  • Página 89: Eliminar o passo 2
  • Página 90: SqlTrackingService deve ser SqlTrackingQuery
  • Página 92: Adicionar "using System.Workflow.ComponentModel" para o passo 2
  • Página 113: System.Workflow.Activity deve ser System.Workflow.Activities
  • Página 114: Correcção para o passo 14
  • Página 116: Primeiro carácter do tipo tem de ser maiúsculas
  • Página 122: WorkingStore deve ser WorkflowStore
  • Página 123: Correcção para nomes de script
  • Páginas 159: Primeiro "construtor base" deve ser "construtor"
  • Página 162: MVDataconnector.cs deve ser MVDataConnector.cs
  • Página 179: Workflow2.Workflow1 deve ser Workflow2.Workflow2
  • 194 De página: Nome da propriedade incorrecta
  • Página 200: O método deve ser propriedades
  • Página 200: O método deve ser eventos
  • Página 236: se (_service == nulo) deve ser se (valor! = null)
  • Página 264: setlevel1 deve ser setLevel1
  • Página 280: Extra parêntesis no código
  • Página 286: WorkflowComplete deve WorkflowCompleted
  • Página 332: Correcção para o último parágrafo
  • Página 352: DefaultSettings deve ser DefaultSettingsSection
  • Página 386: "seleccionar a biblioteca de actividades de fluxo de trabalho" deve ser "Seleccionar fluxo de trabalho"
  • Página 396: CorrelationIntializer deve ser CorrelationInitializer
  • Página 432: SHIFT+F5 deve ser CTRL + F5
  • Página 469: SHIFT+F5 deve ser CTRL + F5

Mais Informação

CD-ROM: Revisão código para os capítulos 6, 8 e 14

CD-ROM: Depois de instalar o código de exemplo a partir do CD, os códigos de exemplo para vários capítulos são colocados, por predefinição, na pasta Press \My Documents\Microsoft no disco rígido.

Actualizámos o código de exemplo para os capítulos 6, 8 e 14. Transfira o código de exemplo actualizado para substituir o código de exemplo no disco rígido para estes capítulos.

WF6-8-14.exe (http://download.microsoft.com/download/5/4/b/54ba6499-4a6b-46e0-ad7c-a3b4d1f22f09/wf6-8-14.exe)

Para obter informações adicionais sobre como transferir ficheiros de suporte da Microsoft, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:

119591 (http://support.microsoft.com/kb/119591/en-us/) Como obter ficheiros de suporte da Microsoft a partir de serviços on-line

Microsoft procedeu de vírus neste ficheiro. Microsoft utilizou o mais recente software de detecção de vírus que estava disponível na data em que o ficheiro foi publicado. O ficheiro é alojado em servidores com segurança avançada que o ajudam a impedir alterações não autorizadas ao ficheiro.

Página xxvii: referência a conteúdo de pesquisa online está incorrecta

Na página xxvii, na secção intitulada "Assistente de conteúdo online" lê:
"Online Assistente de conteúdo
A página de conteúdo online associado tem conteúdo e hiperligações relacionadas com esta lista, incluindo uma hiperligação para a página Web Microsoft Press Technology. É possível encontrar a página de conteúdo complementar online para este livro no www.microsoft.com/mspress/companion/0-7356-2335-4/"

Ignore esta secção completa como não website conteúdo associado para este título.

Página 7: Correcção para localização de transferência do Windows SDK

Na página 7, na primeira marca, o URL para transferir o SDK do Windows foi alterado.

Alteração:

? http://www.microsoft.com/downloads/details.aspx?familyid=7614FE22-8A64-4DFB-AA0C-DB53035F40A0&displaylang=en ?

Para:

? http://www.microsoft.com/downloads/details.aspx?FamilyID=4377F86D-C913-4B5C-B87E-EF72E5B4E065&displaylang=en ?

Página 19: Em falta caracteres de expressões normais

Na página 19, as duas primeiras linhas de código no passo 4 faltam alguns caracteres.

Alteração:
string USCode = @"^(\d{5}$)|(\d{5}$\-\d{4}$)";
string CanadianCode = @"[ABCEGHJKLMNPRSTVXY]\d[A-Z] \d[A-Z]\d";

Para:
string USCode = @"^(\d{5}$)|(\d{5}-\d{4}$)";
string CanadianCode = @"^[ABCEGHJKLMNPRSTVXY]\d[A-Z] \d[A-Z]\d$";


Página 24: Correcção a instância de WorkflowRuntime

Na página 24, no primeiro parágrafo, a instrução sobre WorkflowRuntime ocorrência está incorrecta.

Alteração:
? O runtime WF e a aplicação executem em conjunto num AppDomain em .NET e, podem existir apenas uma instância de WorkflowRuntime por domínio de aplicação. A tentar criar uma segunda instância de WorkflowRuntime num único resultados de domínio de aplicação num InvalidOperationException. ?

Para:
? O runtime WF e a aplicação executar em conjunto de um domínio de aplicação .NET. Apesar de mais cedo no histórico ?s WF poderia ser apenas uma única instância de WorkflowRuntime por domínio de aplicação, versões contemporâneos permitem várias instâncias. ?

28 De página: Correcção para o WorkflowRuntime instância

Na página 28, em "Criar um fluxo de trabalho tempo de execução de fábrica", a instrução sobre WorkflowRuntime está incorrecta.

Alteração:
? Referidas isto anteriormente no capítulo mas é suficientemente importante falar novamente, pode haver apenas uma única instância de WorkflowRuntime por domínio de aplicação. E uma vez que a maioria das aplicações .NET utilizam apenas um AppDomain único, necessariamente segue que poderá normalmente utilizar apenas uma única instância de WorkflowRuntime na aplicação. Sempre que ouvir ? utilizar apenas uma única instância ?, naturalmente penso utilizando uma combinação dos padrões singleton e fábrica. Padrão singleton, se ?re desconhecidos com padrões, é simplesmente um mecanismo para assegurando que não importa quantas vezes a aplicação pede instâncias do objecto singleton, apenas uma instância do singleton nunca é dado. Isto é normalmente feito para objectos que são considerados ? dispendiosos ? criar, tais como objectos que consomem um grande número de recursos ou demorar bastante tempo a ser criada. ?

Para:
? Quando iniciei escrever neste livro, poderá existir apenas uma única instância de WorkflowRuntime por domínio de aplicação. E uma vez que a maioria das aplicações .NET utilizam apenas um domínio de aplicação único, necessariamente cumpridas que, geralmente, pode utilizar apenas uma única instância de WorkflowRuntime na aplicação. Após o lançamento, WF permite mais do que uma instância de WorkflowRuntime por domínio de aplicação, mas localizar a fábrica de fluxo de trabalho que Mostrar aqui a ainda ser uma ferramenta útil, se só uma vez que pode recolher personalizações de tempo de execução (discutidas posteriores capítulos) num colocar e ter um único local o código para encerrá-lo. Sempre que ouvir ? utilizar apenas uma única instância, ? mesmo é permitidos mais do que uma instância neste caso, naturalmente penso utilizando uma combinação dos padrões singleton e fábrica. Padrão singleton, se ?re desconhecidos com padrões, é simplesmente um mecanismo para assegurando que não importa quantas vezes a aplicação pede instâncias do objecto singleton, apenas uma instância do singleton nunca é dado. Isto é normalmente feito para objectos que são considerados ? dispendiosos ? criar, tais como objectos que consomem um grande número de recursos ou demorar bastante tempo a ser criada. ?

Página 36: _waitHandle deve ser waitHandle

Na página 36, no ponto 6, o carácter de sublinhado _waitHandle shouldbe ser eliminado.

Alteração:
"6. A Microsoft vai necessitam criar o objecto _waitHandle"

Para:
"6. A Microsoft vai necessitam criar o objecto waitHandle"

Página 38: "Criar uma única instância do fluxo de trabalho-Runtime por domínio de aplicação" deve ser "Criar uma instância do tempo de execução de fluxo de trabalho"

Página 38 em "Capítulo 2 Quicke Reference", "Criar uma única instância do fluxo de trabalho-Runtime por domínio de aplicação" deve ser "Criar uma instância do tempo de execução de fluxo de trabalho".

Alteração:
? Adicione uma referência à assemblagem System.Workflow.Runtime. Crie uma única instância do fluxo de trabalho-Runtime por domínio de aplicação e iniciar o tempo de execução WorkflowRuntime.StartRuntime chamada ou criando uma instância de fluxo de trabalho. ?

Para:
? Adicione uma referência à assemblagem System.Workflow.Runtime. Crie uma instância de fluxo de trabalho-tempo de execução. Inicie o tempo de execução chamando WorkflowRuntime.StartRuntime ou criando uma instância de fluxo de trabalho. ?

Página 50: Correcção para o passo 2

Na página 50, no passo 2, indica:

"2. Se foi compilar a aplicação agora, WorkflowHost iria conseguir compilar..."

Mas neste momento que o código não existir, tem a ser escritos no passos seguintes. Para que compilar faz com que sem erros.

Para corrigir este problema, mova o passo 2, tornando-o passo 5. Os passos 3 ? 5 actuais vai tornar-se os passos 2-4.

Página 50: Caixa de sugestão para eliminar

Na página 50, o texto na caixa sugestão não ajuda. Bacuse não é possível seleccionar simultanous entradas em dois separadores. Se alterar o separador e clique em OK, as referências seleccionadas primeira não serão inseridas. Devido esta caixa Sugestão deve ser eliminada.

Página 61: ? classe MyClass ? deve ser ? classe MyClass: DependencyObject ?

Na página 61, existe a correcção para o código de exemplo na parte superior da página.

Alteração:
class MyClass

Para:
class MyClass : DependencyObject


Página 76: ActivityTrackingPoint deve ser ActivityTrackPoint

Na página 76, o último parágrafo "ActivityTrackingPoint" deve ser "ActivityTrackPoint".

Página 88: GetWorkflowRuntime deve ser WorkflowRuntime

Na página 88, no passo 6, GetWorkflowRuntime deve ser o WorkflowRuntime.

Alteração:
?.. .following a linha de código chamar GetWorkflowRuntime. ?

Para:
?.. .following a linha de código cria uma nova instância de WorkflowRuntime. ?

Página 89: Eliminar o passo 2

Na página 89, elimine o passo 2 porque o ficheiro de exemplo incompleta já contém estas directivas utilizando.

Elimine:
"2. Adicionar utilizando as instruções para configuração e controlar a parte superior do ficheiro de fluxo de trabalho:
using System.Configuration; 
using System.Workflow.Runtime.Tracking;
"

Página 90: SqlTrackingService deve ser SqlTrackingQuery

Na página 90 no meio da página, existe um nome de classe incorrecta:

Alteração:
"A consulta é efectuada por SqlTrackingService.TryGetWorkflow."

Para:
"A consulta é efectuada por SqlTrackingQuery.TryGetWorkflow."

Página 92: Adicionar "using System.Workflow.ComponentModel" para o passo 2

Na página 92, no passo 2, o "using System.Workflow.ComponentModel" deve ser adicionado ao código.

Alterar:
using System.Data;
using System.Data.SqlClient;
using System.Globalization;
using System.IO;


Para:
using System.Data;
using System.Data.SqlClient;
using System.Globalization;
using System.IO;
using System.Workflow.ComponentModel;


Página 113: System.Workflow.Activity deve ser System.Workflow.Activities

Na página 113, no passo 11, "System.Workflow.Activity" deve ser "System.Workflow.Activities".

Página 114: Correcção para o passo 14

Na página 114, no passo 4,

Alteração:
"(o método que contém o código é adicionado no passo anterior)"

Para:
"(o método que contém o código adicionaremos no passo seguinte)"

Página 116: Primeiro carácter do tipo tem de ser maiúsculas

Na página 116, no passo 18, o primeiro carácter de tipo tem de ser maiúsculas.

Alterar:
string conn


Para:
String conn


Página 122: WorkingStore deve ser WorkflowStore

Na página 122, no passo 9, o nome da base de dados é errado.

Alteração:
"Esta deverá ser enought necessário examinar a tabela de base de dados WorkingStore InstanceState."

Para:
"Esta deverá ser enought necessário examinar a tabela de base de dados WorkflowStore InstanceState."

Página 123: Correcção para nomes de script

Na página 123, em "Capítulo 6 Quick Reference", os scripts têm o nome incorrecto (remover "fluxo de trabalho" nos nomes).

Alteração:
"Terá de executar o script SqlWorkflowPersistenceService_Schema.sql e o script SqlWorkflowPersistenceService_Logic.sql."

Para:
"Terá de executar o script SqlPersistenceService_Schema.sql e o script SqlPersistenceService_Logic.sql."

Páginas 159: Primeiro "construtor base" deve ser "construtor"

Na página 159, no terceiro parágrafo, a primeira referência "construtor base" deve ser "construtor".

Alteração:
"a Microsoft tem de fornecer um construtor base que aceita o ID da instância (um GUID), que por sua vez passa o ID da instância do construtor base"

Para:
"a Microsoft tem de fornecer um construtor que aceita o ID da instância (um GUID), que por sua vez passa o ID da instância do construtor base"

Página 162: MVDataconnector.cs deve ser MVDataConnector.cs

Na página 162, na parte inferior da página, o título da lista 8-3 está incorrecto.

Alteração:
"Lista 8-3 que MVDataconnector.cs concluído"

Para:
"Lista 8-3 que MVDataConnector.cs concluído"

Página 179: Workflow2.Workflow1 deve ser Workflow2.Workflow2

Na página 179, no passo 10, existe um erro no nome.

Alteração:
"(Workflow2.Workflow1 é o nome totalmente qualificado)"

Para:
"(Workflow2.Workflow2 é o nome totalmente qualificado)"

194 De página: Nome da propriedade incorrecta

Na página 194, na caixa sugestão, o nome da propriedade está incorrecto.

Alteração:
".. directamente a propriedade .Response"

Para:
".. directamente a propriedade .responses"

Página 200: O método deve ser propriedades

Na página 200, na tabela 9-1, o título da coluna da esquerda é incorrecto.

Alteração:
"Método"

Para:
"Propriedades".

Página 200: O método deve ser eventos

Na página 200, na tabela 9-2, o título da coluna da esquerda é incorrecto.

Alteração:
"Método"

Para:
"Evento".

Página 236: se (_service == nulo) deve ser se (valor! = null)

Na página 236, na lista 10-1, existe um erro no código de exemplo.

Alterar:
if (_service == null)

Para:
if (value != null)

NOTA: Existem duas instâncias deste código, ambos precisam de ser alteradas.

Página 264: setlevel1 deve ser setLevel1

Na página 264, 29 de ponto na linha 3, existe um nome de propriedade incorrecto.

Alteração:
"Propriedades de nível de ?s setlevel1 dependente"

Para:
"Propriedades de nível de ?s setLevel1 dependente"

Página 280: Extra parêntesis no código

Na página 280, no código de exemplo acima do título "Encadeamento explícito," existe um parêntese extra na linha de código.

Alterar:
[RuleWrite("Discount")]]

Para:
[RuleWrite("Discount")]


Página 286: WorkflowComplete deve WorkflowCompleted

Na página 286, no ponto 8 linhas 5 e 6, o nome do evento está incorrecto.

Alteração:
"WorkflowComplete evento"

Para:
"WorkflowCompleted evento"

Página 332: Correcção para o último parágrafo

Na página 332, o último parágrafo

Alteração:
? Isto doesn?t afecta o fluxo de trabalho, mas em vez disso repõe os botões de interface de utilizador. ?

Para:
? Isto faz com que a aplicação a reiniciar, que carrega novamente o runtime do fluxo de trabalho (uma vez que premir uma condição de terminal, depois de todos os) e repõe a interface de utilizador. (Note que uma máquina soda real iria repor o estado inicial deve esperar por outro cliente, mas que pretendia mostrar um estado de terminal em acção.) ?

Página 352: DefaultSettings deve ser DefaultSettingsSection

Na página 352, na última caixa de notas, o nome settting está incorrecto.

Alteração:
"System.Transactions.Configuration.DefaultSettings.Timeout"

Para:
"System.Transactions.Configuration.DefaultSettingsSection.Timeout"

Página 386: "seleccionar a biblioteca de actividades de fluxo de trabalho" deve ser "Seleccionar fluxo de trabalho"

Na página 386, no passo 4, existe um erro.

Alteração:
"seleccionar a biblioteca de actividades de fluxo de trabalho"

Para:
"Seleccionar fluxo de trabalho"

Página 396: CorrelationIntializer deve ser CorrelationInitializer

Na página 396, na segunda linha a partir da parte inferior, o nome do atributo falta uma letra i.

Alteração:
"CorrelationIntializer"

Para:
"CorrelationInitializer"

Página 432: SHIFT+F5 deve ser CTRL + F5

Na página 432, no passo 39, o nome da chave é incorrecto.

Alteração:
"Para executar a aplicação, prima SHIFT+F5"

Para:
"Para executar a aplicação, prima CTRL + F5"

Página 469: SHIFT+F5 deve ser CTRL + F5

Na página 469, no passo 8, o nome da chave é incorrecto.

Alteração:
"Para executar a aplicação, prima SHIFT+F5"

Para:
"Para executar a aplicação, prima CTRL + F5"

Está empenhada em fornecer informativos e precisos livros Microsoft Press. Todos os comentários e as correcções listadas acima estão prontas para inclusão no futuras impressões deste livro. Se tiver uma posterior impressão deste manual, já pode conter a maior parte ou todas as correcções acima.

A informação contida neste artigo aplica-se a:
  • Microsoft Windows Workflow Foundation Step by Step, ISBN 0-7356-2335-X
Palavras-chave: 
kbmt KB935354 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 935354  (http://support.microsoft.com/kb/935354/en-us/ )