Artigo: 949738 - Última revisão: terça-feira, 26 de Fevereiro de 2008 - Revisão: 1.1

MCTS Paced Training Kit (Exam 70-526): comentários de desenvolvimento da Microsoft.NET Framework 2.0 Windows-Based cliente e correcções parte 2

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 MCTS Paced Training Kit (Exam 70-526): Microsoft.NET Framework 2.0 Windows-Based cliente Development , 978-0-7356-2333-0.Estão disponíveis em 929187 (http://support.microsoft.com/kb/929187) comentários adicionais e correcções.

Abrange os seguintes tópicos:

  • Página 319: Definição de "Serializable" está incorrecta
  • Página 340: Sql1 referenciado em vez de SqlDataAdapter1
  • Página 352: ForeignKey classe referenciado em vez de ForeignKeyConstraint
  • Página 360: Sql1.UpdateCommand deve ser SqlDataAdapter1.UpdateCommand
  • Página 366: Código provoca registos para não guardar
  • Página 369: SqlDataAdapter deve ser SqlDataAdapter1
  • Página 370: Fornecedor adicionais informações necessárias no código VB e C#
  • Página 390: C# código contém um erro
  • Página 418: Maiúsculas/minúsculas incorrecta do código de exemplo
  • Páginas 457 & 458: "myReader" deve ser "myWriter"
  • Página 463: InnerXml deve ser ReadInnerXml e OuterXml deve ser ReadOuterXml
  • Página 539: "Rótulo2" e "Rótulo 4" devem ser "Rótulo1" e "Rótulo3"
  • Página 544: Instrução incorrecta para definir a propriedade MdiParent
  • Página 545: Vários erros no C# código exemplo
  • Página 549: IsMdiContainer referido como IsMdiParent
  • Página 561: "TabOrder" referenciado em vez de "TabIndex"
  • Página 567: "mínimo" utilizado em vez de "Máximo"
  • 571 De página: Valor incorrecto utilizado numa fórmula de propriedade de AutoPopDelay
  • Página 581: "DefaultSettings" devem ser "Predefinido"
  • Página 597: "tem" é utilizado em vez de "maioria"
  • 631 Páginas-632: ToolBoxBitmap deve ser ToolboxBitmap
  • 653 De página: "substitui" deve ser "substituir"
  • Página 655: Chamada para actualizar faltam código C#
  • Página 691: "SplitControl" deve ser "SplitContainer"
  • Página 691: "TabContainer" deve ser "TabControl"
  • Página 707: ODBC deve ser Oracle e vice-versa
  • Página 723: InnerXml deve ser ReadInnerXml e OuterXml deve ser ReadOuterXml
  • 729 De página: IsMdiContainer referido como IsMdiParent
  • Página 742: Definição de "delegado" incorrecto

Mais Informação

Página 319: Definição de "Serializable" está incorrecta

Na página 319, a definição de Serializable lê:

"Os bloqueios são colocados em todos os dados utilizados numa consulta, impedir que outros utilizadores actualizar os dados. Impede leituras não repeatable mas fantasma linhas são ainda possíveis. "

Deverá ler:

"Um bloqueio de intervalo é colocado no DataSet, impedir que outros utilizadores actualizar ou inserir linhas para o conjunto de dados até que a transação esteja concluída."

Página 340: Sql1 referenciado em vez de SqlDataAdapter1

Na página 360, segundo a última linha do código C# exemplo leituras:

Sql1.UpdateCommand = UpdateCommand;

Deverá ler:

SqlDataAdapter1.UpdateCommand = UpdateCommand;


Página 352: ForeignKey classe referenciado em vez de ForeignKeyConstraint

Na página 352, lê a primeira frase da secção "Como criar uma restrição de chave externa":

"Criar restrições de chave externa, criando uma instância da classe ForeignKey e atribuindo a coluna pretendida ou colunas das tabelas principais e subordinados para a restrição."

Deverá ler:

"Criar restrições de chave externa, criando uma instância da classe ForeignKeyConstraint e atribuindo a coluna pretendida ou colunas das tabelas principais e subordinados para a restrição."

Página 360: Sql1.UpdateCommand deve ser SqlDataAdapter1.UpdateCommand

Na página 360, a linha 12 no C# código de exemplo contém um ' DataAdapter ' incorrecto

Alterar:
Sql1.UpdateCommand = UpdateCommand;

Para:
SqlDataAdapter1.UpdateCommand = UpdateCommand;

Página 366: Código provoca registos para não guardar

Na página 366, no passo 23 o último 3 linhas de código do VB e C# código exemplo provoca registos a não ser guardado no passo 27.

Remova as seguintes linhas de exemplo do VB:
' After the row is updated reset the table to reflect the changes
NorthwindDataSet1.Customers.Clear()
SqlDataAdapter1.Fill(NorthwindDataSet1.Customers)

Remova as seguintes linhas exemplo C#:
// After the row is updated reset the table to reflect the changes
northwindDataSet1.Customers.Clear();
sqlDataAdapter1.Fill(northwindDataSet1.Customers);

Página 369: SqlDataAdapter deve ser SqlDataAdapter1

Na página 369, o código VB e C# do passo 9 contém um ' DataAdapter ' incorrecto.

Alterar:
' VB
Dim commands As New SqlCommandBuilder(SqlDataAdapter)

// C#
SqlCommandBuilder commands = new SqlCommandBuilder(SqlDataAdapter);

Para:
' VB
Dim commands As New SqlCommandBuilder(SqlDataAdapter1)

// C#
SqlCommandBuilder commands = new SqlCommandBuilder(SqlDataAdapter1);

Página 370: Fornecedor adicionais informações necessárias no código VB e C#

Na página 370, uma nota necessita de ser adicionada para o passo 7 indicando:

"Nota: Se estiver a utilizar 7 do SQL Server, SQL Server 2000 ou SQL Server 2005 (todas as edições) tem de alterar o fornecedor na linha 5 do código VB e C# para SQLNCLI em vez de SQLOLEDB."

Página 390: C# código contém um erro

Na página 390, a linha 6 no código C# falta parênteses rectos.

Alterar:
row = NwDataDocument.GetRowFromElement(Xml.XmlElement)xmlNode;

Para:
row = NwDataDocument.GetRowFromElement((Xml.XmlElement)xmlNode);


Página 418: Maiúsculas/minúsculas incorrecta do código de exemplo

Na página 418, lê o exemplo de código C#:

customersBindingSource = New BindingSource(northwindDataSet1, "Customers");

Deverá ler:

customersBindingSource = new BindingSource(northwindDataSet1, "Customers");


Páginas 457 & 458: "myReader" deve ser "myWriter"

Nas páginas 457 & 458, exemplos de código VB e C# que começam na parte inferior da página 457 e continuam com o 458 contém métodos incorrectos.

Alterar:
' VB
myReader.WriteStartElement("FirstNames")
myReader.WriteAttributeString("Nicknames", "Ok")
myWriter.WriteElementString("Name", "Libby")
myReader.WriteEndElement()

// C#
myReader.WriteStartElement("FirstNames");
myReader.WriteAttributeString("Nicknames", "Ok");
myWriter.WriteElementString("Name", "Libby");
myReader.WriteEndElement();

Para:
' VB
myWriter.WriteStartElement("FirstNames")
myWriter.WriteAttributeString("Nicknames", "Ok")
myWriter.WriteElementString("Name", "Libby")
myWriter.WriteEndElement()

// C#
myWriter.WriteStartElement("FirstNames");
myWriter.WriteAttributeString("Nicknames", "Ok");
myWriter.WriteElementString("Name", "Libby");
myWriter.WriteEndElement();

Página 463: InnerXml deve ser ReadInnerXml e OuterXml deve ser ReadOuterXml

Na página 463, respostas C & D a pergunta 2 contém métodos incorrectos.

Alterar:
C. ' VB
myReader.MoveToAttribute("length")
MsgBox(myReader.InnerXml)
// C#
myReader.MoveToAttribute("length");
MessageBox.Show(myReader.InnerXml);
D. ' VB
myReader.MoveToAttribute("length")
MsgBox(myReader.OuterXml)
// C#
myReader.MoveToAttribute("length");
MessageBox.Show(myReader.OuterXml);

Para:
C. ' VB
myReader.MoveToAttribute("length")
MsgBox(myReader.ReadInnerXml)
// C#
myReader.MoveToAttribute("length");
MessageBox.Show(myReader.ReadInnerXml);
D. ' VB
myReader.MoveToAttribute("length")
MsgBox(myReader.ReadOuterXml)
// C#
myReader.MoveToAttribute("length");
MessageBox.Show(myReader.ReadOuterXml);

Página 539: "Rótulo2" e "Rótulo 4" devem ser "Rótulo1" e "Rótulo3"

Na página 539, o passo 6 contém nomes de etiqueta incorrectos na coluna Nome da tabela.

Alteração:
"Rótulo2 Währung Formatar
Label4 Aktuelle Uhrzeit "

Para:
"Rótulo1 Währung-Format
Rótulo3 Aktuelle Uhrzeit "

Página 544: Instrução incorrecta para definir a propriedade MdiParent

Na página 544, lê o passo 3:

"Num método no formulário principal, tal como um item de menu clique em processador de eventos, criar uma nova instância do formulário subordinado e defina a propriedade MdiParent para VERDADEIRO, conforme ilustrado no exemplo seguinte:"

Deverá ler:

"Um método no formulário principal, como um item de menu clique em processador de eventos, criar uma nova instância do formulário subordinado e defina a propriedade MdiParent, tal como mostrado no seguinte exemplo:"

Página 545: Vários erros no C# código exemplo

Na página 545, o segundo C# exemplo bloco de código na página contém vários erros de codificação.

Na linha 5 para baixo de alteração:
if (this.ActiveControl.GetType() is TextBox)

Para:
if (activeForm.ActiveControl is TextBox)

Na linha de 7 º premida alteração:
TextBox aTextBox = (TextBox)this.ActiveControl;

Para:
TextBox aTextBox = (TextBox)activeForm.ActiveControl;


Página 549: IsMdiContainer referido como IsMdiParent

Na página 549, responda A para leituras pergunta 1:

"Definir a propriedade IsMdiParent do formulário principal para verdadeiro."

Deverá ler:

"Definir a propriedade IsMdiContainer do formulário principal para verdadeiro."

Página 561: "TabOrder" referenciado em vez de "TabIndex"

Na página 561, lê a coluna de propriedades na última linha da primeira tabela:

"TabOrder"

Deverá ler:

"TabIndex"

Página 567: "mínimo" utilizado em vez de "Máximo"

Na página 567, lê a terceira frase do primeiro parágrafo:

"Do mesmo modo, quando a propriedade valor é o mesmo valor que a propriedade mínimo, o controlo de ProgressBar aparece completamente preenchido."

Deverá ler:

"Do mesmo modo, quando a propriedade valor é o mesmo valor que a propriedade máximo, o controlo de ProgressBar aparece completamente preenchido."

571 De página: Valor incorrecto utilizado numa fórmula de propriedade de AutoPopDelay

Na página 571, a frase 4ª no segundo parágrafo da parte inferior indica incorrectamente que o AutoPopDelay está definido para 5 vezes a propriedade AutomaticDelay.

Alteração:
"A propriedade de AutoPopDelay é definida como 5 * milissegundos N e ReshowDelay propriedade estiver definida para N/5 milissegundos."

Para:
"A propriedade de AutoPopDelay estiver definida para 10 * milissegundos N e ReshowDelay propriedade estiver definida para N/5 milissegundos."

Página 581: "DefaultSettings" devem ser "Predefinido"

Na página 581, o exemplo de código C# perto da parte superior da página contém um objecto incorrecto.

Alterar:
// C#
Properties.Settings.DefaultSettings.TitleSetting = "This is the new Title";
Properties.Settings.DefaultSettings.Save();

Para:
// C#
Properties.Settings.Default.TitleSetting = ?This is the new Title?;
Properties.Settings.Default.TitleSetting.Save();

Página 597: "tem" é utilizado em vez de "maioria"

Na página 597, a segunda do segundo parágrafo frase:

"BackgroundWorker suporta a capacidade para cancelar um processo em segundo plano, mas tem de implementar tem do cancelamento código manualmente."

Deverá ler:

"BackgroundWorker suporta a capacidade para cancelar um processo em segundo plano, mas tem de implementar a maioria do código de cancelamento manualmente."

631 Páginas-632: ToolBoxBitmap deve ser ToolboxBitmap

Nas páginas 631 e 632, cada um dos exemplos de código referencia ToolBoxBitmap em vez de ToolboxBitmap.

Alterar:
' VB
<ToolBoxBitmap("C:\myToolboxBitmap.bmp")> Class myControl

Para:
' VB
<ToolboxBitmap("C:\myToolboxBitmap.bmp")> Class myControl

Alterar:
// C#
[ToolBoxBitmap(@"C:\myToolboxBitmap.bmp")]

Para:
// C#
[ToolboxBitmap(@"C:\myToolboxBitmap.bmp")]

653 De página: "substitui" deve ser "substituir"

Na página 653, a primeira linha no C# exemplo de código contém uma palavra-passe incorrecta.

Alterar:
protected overrides void OnPaint(System.Windows.Forms.PaintEventArgs pevent)

Para:
protected override void OnPaint(System.Windows.Forms.PaintEventArgs pevent)

Página 655: Chamada para actualizar faltam código C#

Na página 655, o código do C# na parte superior da página de falta de uma linha.

Alterar:
// C#
protected override void OnClick(EventArgs e)
{
	mClicks++;
	base.OnClick(e);
}

Para:
// C#
protected override void OnClick(EventArgs e)
{
	mClicks++;
	base.OnClick(e);
	this.Refresh();
}

Página 691: "SplitControl" deve ser "SplitContainer"

Na página 691, a segunda frase em maiúsculas e minúsculas cenário 1 contém um controlo inválido.

Alteração:
"Cada controlo SplitterPanel o SplitControl pode, em seguida, controlos de recipiente adicional do sistema anfitrião."

Para:
"Cada controlo SplitterPanel no controlo SplitContainer pode, em seguida, controlos de recipiente adicional do sistema anfitrião."

Página 691: "TabContainer" deve ser "TabControl"

Na página 691, primeira frase em maiúsculas e minúsculas cenário 2 contém um controlo inválido.

Alteração:
"Controlo TabContainer pode ser utilizado para apresentar várias páginas de informações e permitir ao utilizador alternar entre páginas mantendo as informações estáticas."

Para:
"Controlo TabControl pode ser utilizado para apresentar várias páginas de informações e permitir ao utilizador alternar entre páginas mantendo as informações estáticas."

Página 707: ODBC deve ser Oracle e vice-versa

Na página 707, as explicações para obter respostas A e D para pergunta 1 da lição 6 estão incorrectas.

Alteração:
"R. incorrecto. Segurança integrada = yes é utilizado para ligações de ODBC. "

Para:
"R. incorrecto. Segurança integrada = yes é utilizado para ligações de Oracle. "

Alteração:
"BD incorrecto. Trusted_Connection = yes é utilizado para ligações de Oracle. "

Para:
"BD incorrecto. Trusted_Connection = yes é utilizado para ligações de ODBC. "

Página 723: InnerXml deve ser ReadInnerXml e OuterXml deve ser ReadOuterXml

723 De página, respostas C & D a pergunta 2 contém métodos incorrectos.

Alteração:
"C. correcto. O método MoveToAttribute permite-lhe especificar um atributo de nome ou índice. O valor do atributo é exposto através da propriedade InnerXml.
D. incorrecto. Quando colocado um atributo, a propriedade OuterXml devolve o nome do atributo, bem como o valor."

Para:
"C. correcto. O método MoveToAttribute permite-lhe especificar um atributo de nome ou índice. O valor do atributo é exposto através da propriedade ReadInnerXml.
D. incorrecto. Quando colocado um atributo, a propriedade ReadOuterXml devolve o nome do atributo, bem como o valor."

729 De página: IsMdiContainer referido como IsMdiParent

Na página 729, responda A pergunta 1 de leituras a lição 3:

"Corrigir. Tem de criar um formulário principal, definindo a propriedade IsMdiParent como TRUE."

Deverá ler:

"Corrigir. Tem de criar um formulário principal, definindo a propriedade IsMdiContainer como TRUE."

Página 742: Definição de "delegado" incorrecto

Na página 742, lê a definição para "delegado":

"Um data de tipo apontador de função que pode ser utilizado para chamar um método de modo síncrono ou assincronamente."

Deverá ler:

"Um função de segurança do tipo de ponteiro que pode ser utilizado para chamar um método de modo síncrono ou assincronamente."

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:
  • MCTS Self-Paced Training Kit (Exam 70-526): Microsoft .NET Framework 2.0 Windows-Based Client Development, ISBN 0-7356-2333-3
Palavras-chave: 
kbmt KB949738 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: 949738  (http://support.microsoft.com/kb/949738/en-us/ )