MCTS Self-Paced 訓練套件 (測驗 70 536): Microsoft ?.NET Framework 2.0 — 應用程式開發基礎註解和更正第 1

文章翻譯 文章翻譯
文章編號: 923018 - 檢視此文章適用的產品。
全部展開 | 全部摺疊

在此頁中

結論

這份文件包含註解、 更正,與 Microsoft 按活頁簿的相關的已知錯誤的相關資訊 MCTS Self-Paced 訓練套件 (測驗 70 536): Microsoft ?.NET Framework 2.0 — 應用程式開發基礎,978-0-7356-2277年-7。這本書的額外修正可用於文章 935218949730949734

將會涵蓋下列主題:

  • 光碟片: 「 不 」 應從移除評估問題
  • 光碟片: 評估答案應該包含 ICollection,以及不 IDictionaryEnumerator
  • 光碟片: 評估答案也應該包含 Resize 事件
  • 光碟片: lesson3-exercise1-人員-部分程式碼範例是遺漏來自 \Chapter01 資料夾
  • 光碟片: 評估 qurestion 計分方式不正確
  • 頁面 3: System.Value 參考而不是 System.ValueType
  • 第 5 頁: 日期/日期應該是日期 / 無
  • 第 5: 4 頁應該是 1
  • 頁面 9: 注意不正確
  • 第 12: 詞彙 「 定義 」 用來取代 「 初始化 」 在步驟 4 中
  • 頁面 14: 詞彙 「 類別 」 用詞彙 「 結構 」 在步驟 5 中取代
  • 頁面 18: 的單字 「 變數 」 已從最後一句遺失
  • 頁面 24: C# 程式碼範例遺漏
  • C# 範例頁面 25: 不正確程式碼
  • 在程式碼範例中的頁面 46: 校正
  • 頁面 47: 「 節目表 」 使用來代替 Guid"
  • VB 程式碼範例中的頁面 49: 無效字元
  • 遺漏 Person 類別頁面 49: VB 程式碼範例
  • Page 51: 方法不正確地命名
  • 頁面 52: progressBar"使用來代替"progressBar1 」 中的程式碼範例
  • 頁面 55: 不正確的縮小轉換行為的描述
  • 第二個程式碼範例中使用的頁面 58: 不正確索引
  • 用來取代雙精準數,在程式碼中的練習 1 的頁面 59: 十進位
  • 頁面 63: 「 縮小 」 用來取代 「 擴展 」
  • 頁面 72: 「 存在屬性 」 參考的"Exists 屬性 」 的位置
  • 頁面 73: 字串應該是 DirectoryInfo 物件
  • 描述不正確的頁面 74: DriveInfo 類別
  • 頁面 76: 未知的成員描述遺漏 「 類型 」 這個字
  • 頁面 76: 程序稱為存取,而不是列舉的磁碟機
  • 頁面 81: 的詞彙 「 加入 」 用來取代"建立、 刪除"
  • 頁 83: 磁碟機來參考資料夾的位置
  • 頁 83: 的詞彙"包含"使用來代替使用步驟 2] 中
  • 在步驟 6 中的頁面 84: 不正確方向
  • 頁面 85: EnableRaisingEvents 屬性稱為 EnablingRaisingEvents
  • 使用在資料流類型不正確的命名空間頁面 89。
  • 頁面 91: 檔案的建議可以建立讀取時
  • 目錄類別功能的頁面 92: 不正確描述
  • 頁面 92: OpenWrite 方法描述不正確
  • 頁面 97: 「 讀取 」 用來取代 「 寫入 」
  • 頁面 100 的 StreamWriter 類別不正確的基本功能描述
  • 範例程式碼的行為的分頁 104: 不正確描述
  • 頁面 111: 的詞彙 「 包含 」 使用來代替使用步驟 2] 中
  • 頁面 111: 不正確指令在步驟 3 中的練習 1
  • 頁面 112: 類別來參考物件的位置
  • 頁面 115: CanRead 屬性的說明是不正確
  • 頁面 120: CompressionMode.Compress 用 CompressionMode.Decompress 取代
  • 頁面 121: 的詞彙 「 包含 」 使用來代替使用步驟 2] 中
  • 頁面 121 & 122: 程式碼範例的不正確步驟 7
  • 頁面 122、 步驟 9: 其他附註必須加入。
  • 頁面 127: 詞彙 「 檔案 」 用來取代 [目錄]
  • IsolatedStorageFileStream 的頁面 129: 不正確定義
  • 頁面 133: 檔案參考的工作目錄的位置
  • 頁面 135: 的詞彙 「 包含 」 使用來代替使用步驟 2] 中
  • 頁面 135: 物件參考的工作類別的位置
  • 在步驟 3 中的頁面 135: 不正確的 Visual Basic 程式碼
  • 在步驟 4 和 5 中的頁面 136: 不正確的 Visual Basic 程式碼
  • 頁面 137: 範例程式碼遺失
  • 頁面 139: 釐清中的項目第四個符號向下在 [章節摘要] 下的資料
  • 大小寫案例的頁面 140: 不正確描述
  • 頁面 141: 電腦層級的資料稱為組件資料
  • 頁面 145 & 146: 被反轉引數位置
  • 頁面 146: TestRegExp 命令引數部份不正確
  • 頁面 165: IsZip 方法所提到的 ReformatPhone 方法的位置
  • 頁面 170: E."應該從移除答案 E
  • 頁面 187:"或索引"應該移除
  • 頁面 188: 類別參考集合的位置
  • 頁面 192: 遺漏程式碼範例中的新行
  • 頁面 192:"+ + x +"應該是"x +"

其他相關資訊

光碟片: 「 不 」 應從移除評估問題

光碟片上課程檢閱,在問題之一是不正確。

變更:
"哪一個項目並不通常視為與使用 COM Interop 相關聯的缺點? 」

至:
"哪一個項目是一般視為使用 COM Interop 相關聯的缺點? 」

光碟片: 評估答案應該包含 ICollection,以及不 IDictionaryEnumerator

[CDROM 上整備審查評估中其中一個問題會讀取:

您正在建立新的必須使用的每一個迴圈會逐一查看集合類型。您應該實作下列介面的哪一個?(選擇所有套用)
ICollection
IDictionaryEnumerator
IDictionary
IEnumerable
IEqualityCOmparer"

評估狀態答案是 IDictionaryEnumerator 和 IEnumerator。

正確的答案是: ICollection 和 IEnumerator。

光碟片: 評估答案也應該包含 Resize 事件

在整備審查評估中, 其中一個問題會讀取:

"下列何者是 System.Windows.Forms.Button 類別的事件?(選擇三個)
序列化
請輸入
按鈕
調整大小
按一下
MosueOver"

評估狀態的正確的答案是: 輸入,按鈕,Click。

評估作業也應該包含下列答案作為被正確: 調整大小。

光碟片: lesson3-exercise1-人員-部分程式碼範例是遺漏來自 \Chapter01 資料夾

從 \Code\Chapter01 資料夾遺漏的 Visual Basic 和 C#] 程式碼範例"lesson3-exercise1-人員-部分 >。資料夾和檔案可供從 Microsoft 下載中心 」 下載:

lesson3.exe

如需有關如何下載 Microsoft 支援檔案的詳細資訊,按一下 [下列面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項]:

119591如何從線上服務取得 Microsoft 支援檔案

Microsoft 已掃描這個檔案有無病毒。Microsoft 使用已張貼檔案的日期中的 [可用的最新病毒偵測軟體。檔案儲存在安全性強化的伺服器上,以避免任何未經授權的更改至檔案。

光碟片: 評估 qurestion 計分方式不正確

光碟片上課程檢閱,在其中一個問題被計分方式不正確。

這個問題會讀取:
」 您正在撰寫的應用程式需要執行幾個小時會執行的處理。 但是,您需要保持回應使用者在這段時間,讓您使用多執行緒應用程式。 哪一個下列的程式碼範例會啟動執行緒以對其他應用程式的效能衝擊降至最低的一種?(選擇所有套用)"。

當奪得問題時,一個的答案被標示正確,雖然應標記為不正確。

讀取 [解答:
'VB
Dim myThreadDelegate As New ThreadStart(AddressOf ThreasWork.DoWork)
Dim mtThread As New Thread(myThreadDelegate)
myThread.StartLowPriority()

// C#
ThreadStart myThreadDelegate = new ThreadStart(ThreadWork.DoWork);
Thread myThread = new Thread(myThreadDelegate);
myThread.StartLowPriority();

頁面 3: System.Value 參考而不是 System.ValueType

在頁面 3 之後第一個項目符號清單, 的第一個句子會讀取:

」 這些型別被衍生自 System.Value 基底型別"。

應該閱讀:

」 這些型別被衍生自 System.ValueType 基底型別"。

第 5 頁: 日期/日期應該是日期 / 無

在頁面 5,最後一列表 1-2 的第一個儲存格不正確。

變更:
System.DateTime (日期/日期)"

至:
"System.DateTime (日期 / 無)"

第 5: 4 頁應該是 1

在頁面 5 上的第二個資料列的表格 1-2 的 [位元組] 資料行不正確。

變更:
""4

至:
""1

頁面 9: 注意不正確

在頁面 9,附註會讀取:

"注意.net 2.0
運算子關鍵字是在.NET 2.0 的新。

這是不正確,而且應該略過附註。

第 12: 詞彙 「 定義 」 用來取代 「 初始化 」 在步驟 4 中

在頁面 12,步驟 4 的第一個句子會讀取:

"建立定義所有的三個成員變數的建構函式,如下列程式碼會示範:"

應該閱讀:

"建立建構函式會初始化所有的三個成員變數,如下列程式碼會示範:"

頁面 14: 詞彙 「 類別 」 用詞彙 「 結構 」 在步驟 5 中取代

在頁面 14,會讀取第一個句子的步驟 5:

「 修改您的主要程式碼,來適當地建構人員] 類別的執行個體,如下列程式碼範例示範:"

應該閱讀:

「 修改您的主要程式碼,來適當地建構 Person] 結構的執行個體,如下列程式碼範例示範:"

頁面 18: 的單字 「 變數 」 已從最後一句遺失

在頁面 18,會讀取頁面上的最後一句:

"當您修改參考型別時,您修改該參考型別的所有拷貝"。

應該閱讀:

"當您修改參考型別變數時,您修改該參考型別變數的所有複本"。

頁面 24: C# 程式碼範例遺漏

頁 24,應該 VB 程式碼範例的正下方加入以下的程式碼範例:

// C#

try 
{
    StreamReader sr = new StreamReader("text.txt");
    Console.WriteLine(sr.ReadToEnd);
} 

catch (System.IO.FileNotFoundException ex) 
{
    Console.WriteLine("The file could not be found.");
} 

catch (System.UnauthorizedAccessException ex)
{
    Console.WriteLine("You do not have sufficient permissions.");
}

catch (Exception ex) 
{
    Console.WriteLine("Error reading file: " + ex.Message);
}


C# 範例頁面 25: 不正確程式碼

閱讀頁面上 25,VB 程式碼範例的前三行:

Dim sr As StreamReader = New StreamReader("text.txt")
Try
	Console.WriteLine(sr.ReadToEnd)

他們應該閱讀:

Dim sr As StreamReader
Try
	sr = New StreamReader("text.txt")
	Console.WriteLine(sr.ReadToEnd)"

前三行的 C# 程式碼範例讀取:
"StreamReader sr = new StreamReader("text.txt");
try
{
	Console.WriteLine(sr.ReadToEnd());"

他們應該閱讀:
"StreamReader sr;
try
{
	sr = new StreamReader("text.txt");
	Console.WriteLine(sr.ReadToEnd());

在程式碼範例中的頁面 46: 校正

在頁面 46 下第三個項目符號點, 在 C# 程式碼範例不正確。

變更:
// C#
MyEventHandler handler = MyEvent;

EventArgs e = new EventArgs();

if (handler != null)
{
	// Invokes the delegates.
	handler(this, e);
}
// Note that C# checks to determine whether handler is null.
// This is not necessary in Visual Basic

至:
// C#
EventArgs e = new EventArgs();

if (MyEvent != null)
{
	// Invokes the delegates.
	MyEvent(this, e);
}
// Note that C# checks to determine whether handler is null.
// This is not necessary in Visual Basic


頁面 47: 「 節目表 」 使用來代替 Guid"

在頁面 47,從下方第二個段落的第一個句子會包含不正確的屬性。

變更:
"Visual Studio 會自動建立一些標準的屬性。 您的組件當您建立一個專案包括標題、 描述、 公司、 輔助線和版本 」

至:
"Visual Studio 會自動建立一些標準的屬性。 您的組件當您建立一個專案包括標題、 描述、 公司、 guid 和版本 」

VB 程式碼範例中的頁面 49: 無效字元

在頁面 49,VB 程式碼範例會包含無效的括號字元。

變更:
' VB
Imports System.Runtime.CompilerServices
<Assembly:TypeForwardedTo(GetType(DestLib.TypeA))]>

若要:
' VB
Imports System.Runtime.CompilerServices
<Assembly:TypeForwardedTo(GetType(DestLib.TypeA))>

遺漏 Person 類別頁面 49: VB 程式碼範例

在頁面 49,第二個 VB 程式碼範例頁面的底端附近遺失繼承人員。

變更:
' VB
Class Manager
End Class

若要:
' VB
Class Manager : Inherits Person
End Class

Page 51: 方法不正確地命名

閱讀頁面上 51,在步驟 4 中的程式碼範例:

'VB
Private Sub Form1_Shown(ByVal sender As System.Object, ByVal e As System.EventArgs) _'

and

//C#
private void Timer_Shown(object sender, EventArgs e)


他們應該閱讀:

'VB
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) _'

and

//C#
private void Form1_Load(object sender, EventArgs e)


頁面 52: progressBar"使用來代替"progressBar1 」 中的程式碼範例

在頁面 52 要加入至 「 progressBar"第一個 C# 程式碼範例中最上方頁面的 1 需求。

變更:
// C#
void t_Tick(object sender, EventArgs e)
{
progressBar.Value += 10;
if (progressBar.Value >= 100)
t.Stop();
}

若要:
// C#
void t_Tick(object sender, EventArgs e)
{
progressBar1.Value += 10;
if (progressBar1.Value >= 100)
t.Stop();
}


頁面 55: 不正確的縮小轉換行為的描述

在頁面 55,在頁面底部句子會讀取:

縮小的轉換失敗如果來源值超過目的型別範圍,或型別間的轉換不是定義,因此應該將括在縮小轉換 Try 區塊或使用 TryCast 或 TryParse 和檢查傳回值 >。

應該閱讀:

「 縮小轉換可能傳回不正確的結果如果來源值超過目的型別範圍。 如果沒有定義該型別間的轉換您會收到編譯時期錯誤"。

第二個程式碼範例中使用的頁面 58: 不正確索引

在頁面 58,最後一行的第二個 VB 程式碼範例會讀取:

Console.WriteLine("a = {0}, i = {0}", a.ToString, i.ToString)

應該閱讀:

Console.WriteLine("a = {0}, i = {1}", a.ToString, i.ToString)

最後一行的 C# 程式碼範例會讀取:

Console.WriteLine("a = {0}, i = {0}", a.ToString(), i.ToString());

應該閱讀:

Console.WriteLine("a = {0}, i = {1}", a.ToString(), i.ToString());


用來取代雙精準數,在程式碼中的練習 1 的頁面 59: 十進位

在頁面 59,在第三個練習 1 的第二個步驟的 VB 程式碼行讀取:

Dim db As Decimal = 1

應該閱讀:

Dim db As Double = 1


頁面 63: 「 縮小 」 用來取代 「 擴展 」

在頁面 63,會讀取第一個段落的第三句:

"C# 允許隱含轉換為只縮小轉換,不可能遺失任何資訊"。

應該閱讀:

"C# 允許隱含轉換為只能擴大轉換,不可能遺失任何資訊"。

頁面 72: 「 存在屬性 」 參考的"Exists 屬性 」 的位置

在頁面 72,會讀取項目符號清單之後第一個句子:

」,例如您可以檢查檔案是否存在藉由呼叫 FileInfo 物件 ’s 存在屬性如下列程式碼所示:"

應該閱讀:

」,例如您可以檢查檔案是否存在藉由呼叫 FileInfo 物件 ’s Exists 屬性如下列程式碼所示:"

頁面 73: 字串應該是 DirectoryInfo 物件

在頁面 73,「 描述 」 的表格 2-5 根不正確。

變更:
"取得字串形式的 [根目錄] 部分的目錄 ’s 路徑"

至:
"為 DirectoryInfo 物件取得 [根目錄] 部分的目錄 ’s 路徑"

描述不正確的頁面 74: DriveInfo 類別

在頁面 74,DriveInfo 類別區段下方的第一個句子會讀取:

「 DriveInfo 類別會提供基本功能來存取和操作檔案系統中的單一目錄 」。

應該閱讀:

"DriveInfo 類別模型是磁碟機,並提供方法和屬性來查詢磁碟機資訊。用於 DriveInfo 判斷哪些磁碟機可用,而且是哪一種類型的磁碟機。您也可以查詢以判斷容量和可用磁碟機上的可用空間"。

頁面 76: 未知的成員描述遺漏 「 類型 」 這個字

在頁面 76,未知成員表格 2-9 的描述會讀取:

「 磁碟機無法判定"。

應該閱讀:

「 磁碟機類型無法判定"。

頁面 76: 程序稱為存取,而不是列舉的磁碟機

在頁面 76,HOW TO 列舉磁碟機上一節的第一個句子會讀取:

"這個程序來存取磁碟機在系統中:"

應該閱讀:

"依照這個的程序,來列舉在系統中的所有磁碟機:"

頁面 81: 的詞彙 「 加入 」 用來取代"建立、 刪除"

在頁面 81,第二個段落的第一個句子會讀取:

"加到使用加入及變更事件,您可以監視重新命名的檔案系統 」。

應該閱讀:

"加到使用建立日期]、 [刪除的郵件] 及 [Changed 事件,您可以監視重新命名的檔案系統 」。

頁 83: 磁碟機來參考資料夾的位置

在頁 83,會讀取第一句練習 1:

"在此練習中您將列舉透過特定的磁碟機中的所有檔案"。

應該閱讀:

"在本練習中您將透過列舉特定資料夾中的所有檔案"。

頁 83: 的詞彙"包含"使用來代替使用步驟 2] 中

在頁 83,步驟 2 會讀取:

"加入匯入 (或在 C# include) System.IO 命名空間到新的專案。

應該閱讀:

「 加入匯入 (或 aa C# 中使用陳述式) System.IO 命名空間到新的專案。

在步驟 6 中的頁面 84: 不正確方向

在頁面 84,會讀取第一個句子的步驟 6:

在主要的方法中撰寫建立 Windows 目錄 DirectoryInfo 物件的新執行個體,並用來呼叫新 ShowDirectory 方法的程式碼。

應該閱讀:

在主要的方法中撰寫建立 DirectoryInfo 類別針對系統目錄的新執行個體,並用來呼叫新 ShowDirectory 方法的程式碼。

頁面 85: EnableRaisingEvents 屬性稱為 EnablingRaisingEvents

在頁面 85,步驟 7 會讀取:

"將設定 EnablingRaisingEvents 屬性為 True 告訴監看員物件,來啟動擲回事件 」。

應該閱讀:

"將設定 EnableRaisingEvents 屬性為 True 告訴監看員物件,來啟動擲回事件 」。

使用在資料流類型不正確的命名空間頁面 89。

在頁面 89,第 3 個、 第四個和第五個項目符號點閱讀:

"* CryptoStream (System.Security)
* NetworkStream (System.Net)
* GZipStream (System.compression)"

他們應該閱讀:

"* CryptoStream (System.Security.Cryptography)
* NetworkStream (System.Net.Sockets)
* GZipStream (System.IO.compression)"

頁面 91: 檔案的建議可以建立讀取時

在頁面 91,會讀取第一個項目符號點:

作業來建立或開啟檔案進行讀取

應該閱讀:

"來開啟檔案進行讀取操作"

目錄類別功能的頁面 92: 不正確描述

在頁面 92,目錄類別區段的第二個句子會讀取:

"目錄類別會提供基本功能以開啟進行讀取和寫入檔案資料流 」。

應該閱讀:

目錄類別提供基本功能,建立、 管理、 刪除,及分析的目錄。

頁面 92: OpenWrite 方法描述不正確

在頁面 92,OpenWrite 方法的描述會讀取:

開啟現有的檔案進行寫入中並傳回 StreamWriter 物件。

應該閱讀:

開啟現有的檔案進行寫入中並傳回 FileStream 物件。

頁面 97: 「 讀取 」 用來取代 「 寫入 」

在頁面 97,第一個段落的第一個句子會讀取:

"StreamReader 類別會提供基本功能從資料流衍生類別中寫入資料 」。

應該閱讀:

"StreamReader 類別提供基本的功能,讀取資料流衍生類別中的資料 」。

頁面 100 的 StreamWriter 類別不正確的基本功能描述

在頁面 100,第一個段落的第一個句子會讀取:

"StreamWriter 類別提供基本的功能,讀取資料流衍生類別中的資料 」。

應該閱讀:

"StreamWriter 類別會提供基本功能從資料流衍生類別中寫入資料 」。

範例程式碼的行為的分頁 104: 不正確描述

在頁面 104,會讀取頁面上的最後一句:

"下列的程式碼讀取只顯示程式碼的例如:"

應該閱讀:

」,例如下列程式碼會讀取只顯示程式碼寫入資料:"

頁面 111: 的詞彙 「 包含 」 使用來代替使用步驟 2] 中

在頁面 111,步驟 2 會讀取:

"加入匯入 (或在 C# include) System.IO 命名空間到新的專案。

應該閱讀:

「 加入匯入 (或 aa C# 中使用陳述式) System.IO 命名空間到新的專案。

頁面 111: 不正確指令在步驟 3 中的練習 1

在頁面 111,會讀取練習 1 的步驟 3:

"Main] 方法中建立新的 StreamWriter 從檔案類別的建立方法。

應該閱讀:

"Main] 方法中建立新 StreamWriter 藉由呼叫 CreateText 方法的檔案類別 」。

頁面 112: 類別來參考物件的位置

在頁面 112,練習 2 的步驟 2 會讀取:

"Main 方法中關閉 StreamWriter 類別之後開啟的檔案建立新的 StreamReader 物件時請使用檔案類別 OpenText 方法"。

應該閱讀:

"Main 方法中 StreamWriter 物件關閉之後開啟的檔案建立新的 StreamReader 物件時請使用檔案類別 OpenText 方法"。

頁面 115: CanRead 屬性的說明是不正確

在頁面 115,CanRead 屬性表格 2-30 的描述會讀取:

"決定資料流是否支援讀取時解壓縮檔案。(繼承自資料流類別)"。

應該閱讀:

"決定資料流是否支援讀取。(繼承自資料流類別)"。

頁面 120: CompressionMode.Compress 用 CompressionMode.Decompress 取代

在頁面 120,閱讀第一個完整的程式碼範例:

' VB 
Dim compStream As _ 
    New GZipStream(sourceFile, CompressionMode.Compress) 
 
// C# 
GZipStream compStream =  
    new GZipStream(sourceFile, CompressionMode.Compress);

應該閱讀:

' VB 
Dim compStream As _
    New GZipStream(sourceFile, CompressionMode.Decompress)

 // C#
GZipStream compStream = 
    new GZipStream(sourceFile, CompressionMode.Decompress);


頁面 121: 的詞彙 「 包含 」 使用來代替使用步驟 2] 中

在頁面 121,步驟 2 會讀取:

"加入匯入 (或在 C# include) System.IO 命名空間到新的專案。

應該閱讀:

「 加入匯入 (或 aa C# 中使用陳述式) System.IO 命名空間到新的專案。

頁面 121 & 122: 程式碼範例的不正確步驟 7

121 & 122,練習 1 步驟 7 的頁面上的 VB 和 C# 程式碼範例不正確。當在練習中使用,他們不要建立一個較小的壓縮的檔。

變更:
' VB
Dim theByte As Integer = sourceFile.ReadByte()
While theByte <> -1
    compStream.WriteByte(CType(theByte, Byte))
    theByte = sourceFile.ReadByte()
End While

// C#
int theByte = sourceFile.ReadByte();
while (theByte != -1)
{
    compStream.WriteByte((byte)theByte);
    theByte = sourceFile.ReadByte();
}

到:
' VB
Dim buffer(sourceFile.Length) As Byte
        sourceFile.Read(buffer, 0, buffer.Length)
        compStream.Write(buffer, 0, buffer.Length)

// C#
const int buf_size = 4096;
byte[] buffer = new byte[buf_size];
int bytes_read = 0;
do
{
    bytes_read = sourceFile.Read(buffer,0,buf_size);
    compStream.Write(buffer,0,bytes_read);
} while (bytes_read != 0);

頁面 122: 其他附註必須加入步驟 9。

頁面 122 上步驟 9 加法注意必須加入之前程式碼範例,如需詳細資訊:

"注意: 使用小的檔案可能會導致壓縮的檔案被大於原始因為的壓縮的額外負荷。如果您使用較大的檔案,負荷量的大小不會造成這類 pallor 所產生的檔案大小"。

頁面 127: 詞彙 「 檔案 」 用來取代 [目錄]

在頁面 127,GetDirectoryNames 表格 2-36 的描述會讀取:

「 取得存放區中的目錄名稱符合檔案遮罩清單"

應該閱讀:

「 取得符合目錄遮罩的目錄名稱存放區中的清單"

IsolatedStorageFileStream 的頁面 129: 不正確定義

在頁面 129,第一個段落的第一個句子會讀取:

IsolatedStorageFileStream 類別封裝用來在隔離儲存區中建立檔案資料流。

應該閱讀:

IsolatedStorageFileStream 類別封裝用來讀取、 寫入和建立隔離儲存區中的檔案資料流。

頁面 133: 檔案參考的工作目錄的位置

在頁面 133,最終的程式碼之前段落範例會讀取:

"目錄被視為多檔案,因為若要測試其存在,您必須使用會傳回符合檔案遮罩的字串陣列的方法。IsolatedStorageFile 類別的 [GetDirectoryNames 方法可讓您嘗試建立它之前,找出一個現有的檔案:"

應該閱讀:

"目錄被視為多檔案,因為若要測試其存在,您必須使用會傳回符合一個遮罩的字串陣列的方法。IsolatedStorageFile 類別的 [GetDirectoryNames 方法可讓您在嘗試建立它之前,尋找現有的目錄:"

頁面 135: 的詞彙 「 包含 」 使用來代替使用步驟 2] 中

在頁面 135,步驟 2 會讀取:

"加入匯入 (或在 C# include) System.IO 命名空間到新的專案。

應該閱讀:

「 加入匯入 (或 aa C# 中使用陳述式) System.IO 命名空間到新的專案。

頁面 135: 物件參考的工作類別的位置

在頁面 135,在 「 練習 1 」 中的步驟 3 的第一個句子會讀取:

"新專案的 Main 方法中, 建立 [命名的範圍是目前的使用者和組件的 userStore IsolatedStorageFile 物件的新執行個體]"。

應該閱讀:

"新專案的 Main 方法中, 建立 [命名的範圍是目前的使用者和組件的 userStore IsolatedStorageFile 類別的新執行個體]"。

在步驟 3 中的頁面 135: 不正確的 Visual Basic 程式碼

在頁面 135,Visual Basic 程式碼,在步驟 3 中的讀取:

' VB 
IsolatedStorageFile userStore = _ 
    IsolatedStorageFile.GetUserStoreForAssembly()

應該閱讀:

' VB
Dim userStore as IsolatedStorageFile = _
    IsolatedStorageFile.GetUserStoreForAssembly()


在步驟 4 和 5 中的頁面 136: 不正確的 Visual Basic 程式碼

在頁面 136,Visual Basic 程式碼,在步驟 4 中的讀取:

' VB 
IsolatedStorageFileStream userStream = new _  
    IsolatedStorageFileStream("UserSettings.set", _ 
                              FileMode.Create, _  
                              userStore) 


應該閱讀:

' VB
Dim userStream as IsolatedStorageFileStream = new _ 
    IsolatedStorageFileStream("UserSettings.set", _
                              FileMode.Create, _ 
                              userStore)


步驟 5 中的程式碼會讀取:

' VB 
StreamWriter userWriter = new StreamWriter(userStream) 
userWriter.WriteLine("User Prefs") 
userWriter.Close() 


應該閱讀:

' VB
Dim userWriter as new StreamWriter(userStream)
userWriter.WriteLine("User Prefs")
userWriter.Close()


頁面 137: 範例程式碼遺失

在頁面 137,會讀取第五個的第一節的範例程式碼行:

// ...

應該閱讀:

Console.WriteLine("No data saved for this user.");


頁面 139: 釐清中的項目第四個符號向下在 [章節摘要] 下的資料

在頁面 139,項目第四個符號向下在 [章節摘要] 下它會讀取:

「 StreamReader 和 StreamWriter 類別是利器移動資料,及登出包括 FileStreams、 MemoryStreams 及 IsolatedStorageFileStreams 的資料流處理中 」。

應該閱讀:

「 StreamReader 和 StreamWriter 類別是利器中處理的資料流包括 FileStreams、 MemoryStreams 及 IsolatedStorageFileStreams 移動 textoriented 資料 」。

大小寫案例的頁面 140: 不正確描述

在頁面 140,情況分析藍本區段的第一個句子會讀取:

"在下列案例的案例中您將會套用您學到關於如何使用應用程式定義域和服務"。

應該閱讀:

"在下列案例的案例中您將會套用您學到關於檔案和目錄"。

頁面 141: 電腦層級的資料稱為組件資料

在頁面 141,[建立簡單的設定存放區區段讀取:

"對此任務您應該完成至少練習 1 和 2。若要了解使用者和組件資料如何在隔離儲存區完成練習 3 也不同。

-練習 1 建立 Windows Form 應用程式,可以讓使用者儲存資料,並將它儲存在隔離儲存區。
-由不同的使用者帳戶下執行練習 2 測試 Windows Form 應用程式。
-練習 3 修改應用程式來儲存某些組件層級資料,以查看該資料是否為所有使用者相同"

應該閱讀:

"對此任務您應該完成至少練習 1 和 2。若要了解使用者和電腦層級資料如何在隔離儲存區中不同,也完成練習 3。

-練習 1 建立 Windows Form 應用程式,可以讓使用者儲存資料,並將它儲存在隔離儲存區。
-由不同的使用者帳戶下執行練習 2 測試 Windows Form 應用程式。
-練習 3 修改應用程式來儲存某些電腦層級資料,以查看該資料是否為所有使用者相同"

頁面 145 & 146: 被反轉引數位置

在頁面 145,線條 VB 程式碼範例 7],然後頁面 146 行上的 C# 程式碼範例 11 包含不正確的引數位置。

變更 (頁 145 VB):
If Regex.IsMatch(args(1),args(0)) Then

若要:
If Regex.IsMatch(args(0),args(1)) Then

變更 (頁面 146 C#):
if (Regex.IsMatch(args[1], args[0]))

若要:
if (Regex.IsMatch(args[0], args[1]))

頁面 146: TestRegExp 命令引數部份不正確

在頁面 146,兩個命令列和預期的輸出範例在第 1 個段落之下會部分不正確。

變更:
C:\>TestRegExp ^\d{5}$ 1234
輸入不照符合規則運算式。
C:\>TestRegExp ^\d{5}$ 12345
輸入符合規則運算式。

若要:
C:\TestRegExp 1234 ^^\d{5}$
輸入不照符合規則運算式。
(注意: 您需要新增另一個 ^ 因為命令列將解釋 ^ 為逸出字元。第二個 ^ 新增直接透過 Visual Studio 命令列專案屬性-偵錯-命令列引數的命令列引數時並不需要)
C:\TestRegExp 12345 ^^\d{5}$
輸入符合規則運算式。

頁面 165: IsZip 方法所提到的 ReformatPhone 方法的位置

在頁面 165 之前程式碼範例在練習 2 的步驟 3 中, 最後一句會讀取:

"您撰寫的 IsZip 方法雖然可以使用許多不同的規則運算式,可能看起來像這樣:"

應該閱讀:

"您撰寫的 ReformatPhone 方法雖然可以使用許多不同的規則運算式,可能看起來像這樣:"

頁面 170: E."應該從移除答案 E

在頁面 170 問題 4 解答 E 會讀取:

東的 amomomottohez"

應該閱讀:

"amomomottohez

頁面 187:"或索引"應該移除

在頁面 187 中, 有錯誤 Hashtable 和 StringDictionary 的說明。

變更:
"Hashtable A 的集合物件的名稱/值組,可允許根據名稱或索引擷取"

至:
"Hashtable A 的集合物件的名稱/值組擷取藉由名稱"

變更:
"StringDictionary A 組的集合名稱/值的字串,可讓根據名稱或索引擷取"

至:
"StringDictionary A 組的集合名稱/值的字串,讓擷取依名稱"

頁面 188: 類別參考集合的位置

在頁面 188,新增和移除項目] 區段的第二個句子會讀取:

「 要加入的項目和移除的項目自類別是非常直截了當 」。

應該閱讀:

「 新增項目],以和從集合移除項目是非常直截了當 」。

頁面 192: 遺漏程式碼範例中的新行

在頁面 192,第七個行的第二個程式碼範例會讀取:

// C# IEnumerator enumerator = coll.GetEnumerator();

應該閱讀:

// C# 
IEnumerator enumerator = coll.GetEnumerator();


頁面 192:"+ + x +"應該是"x +"

在頁面 192 上, 第一個程式碼範例頁面上的第二行不正確。

變更:
for (int x = 0; x < coll.Count; ++x)

若要:
for (int x = 0; x < coll.Count; x++)

Microsoft 按將致力於提供有用的資訊和精確的書籍。所有註解和更正上列準備就緒可納入本書的未來 printings。如果您本書的再版它可能已經包含大部分或所有上述的更正。

屬性

文章編號: 923018 - 上次校閱: 2007年11月7日 - 版次: 2.23
這篇文章中的資訊適用於:
  • MCTS Self-Paced Training Kit (Exam 70-536): Microsoft .NET Framework 2.0 - Application Development Foundation, ISBN 0-7356-2277-9
關鍵字:?
kbmt KB923018 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:923018
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com