From 1f5e026b49952bd2772df0328d409a0172b5d342 Mon Sep 17 00:00:00 2001 From: Apress Date: Mon, 17 Oct 2016 18:05:51 +0100 Subject: [PATCH] First commit --- 9781430248606.jpg | Bin 0 -> 10137 bytes 9781430248606_sourcecode/BookExamples.sln | 258 ++++++++++++++++++ .../BookExamples.sln.docstates.suo | Bin 0 -> 8198 bytes 9781430248606_sourcecode/BookExamples.suo | Bin 0 -> 305664 bytes 9781430248606_sourcecode/BookExamples.v11.suo | Bin 0 -> 638976 bytes 9781430248606_sourcecode/CH08_GUI/App.config | 6 + .../CH08_GUI/CH08_GUI.csproj | 88 ++++++ 9781430248606_sourcecode/CH08_GUI/Program.cs | 22 ++ .../CH08_GUI/Properties/AssemblyInfo.cs | 36 +++ .../CH08_GUI/Properties/Resources.Designer.cs | 71 +++++ .../CH08_GUI/Properties/Resources.resx | 117 ++++++++ .../CH08_GUI/Properties/Settings.Designer.cs | 30 ++ .../CH08_GUI/Properties/Settings.settings | 7 + .../CH08_GUI/bin/Debug/CH08_GUI.vshost.exe | Bin 0 -> 22392 bytes .../bin/Debug/CH08_GUI.vshost.exe.config | 6 + .../bin/Debug/CH08_GUI.vshost.exe.manifest | 11 + .../CH08_GUI/frmMain.Designer.cs | 18 ++ 9781430248606_sourcecode/CH08_GUI/frmMain.cs | 25 ++ .../CH08_GUI/frmMain.resx | 120 ++++++++ .../CH08_GUI.csproj.FileListAbsolute.txt | 9 + .../DesignTimeResolveAssemblyReferences.cache | Bin 0 -> 834 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 7051 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 9781430248606_sourcecode/Ch01/Ch01.csproj | 120 ++++++++ 9781430248606_sourcecode/Ch01/Listing 1-1.cs | 31 +++ 9781430248606_sourcecode/Ch01/Listing 1-10.cs | 19 ++ 9781430248606_sourcecode/Ch01/Listing 1-11.cs | 21 ++ 9781430248606_sourcecode/Ch01/Listing 1-12.cs | 21 ++ 9781430248606_sourcecode/Ch01/Listing 1-13.cs | 24 ++ 9781430248606_sourcecode/Ch01/Listing 1-14.cs | 17 ++ 9781430248606_sourcecode/Ch01/Listing 1-15.cs | 38 +++ 9781430248606_sourcecode/Ch01/Listing 1-18.cs | 24 ++ 9781430248606_sourcecode/Ch01/Listing 1-19.cs | 18 ++ 9781430248606_sourcecode/Ch01/Listing 1-2.cs | 20 ++ 9781430248606_sourcecode/Ch01/Listing 1-20.cs | 18 ++ 9781430248606_sourcecode/Ch01/Listing 1-21.cs | 20 ++ 9781430248606_sourcecode/Ch01/Listing 1-22.cs | 17 ++ 9781430248606_sourcecode/Ch01/Listing 1-23.cs | 18 ++ 9781430248606_sourcecode/Ch01/Listing 1-24.cs | 31 +++ 9781430248606_sourcecode/Ch01/Listing 1-25.cs | 26 ++ 9781430248606_sourcecode/Ch01/Listing 1-26.cs | 15 + 9781430248606_sourcecode/Ch01/Listing 1-27.cs | 17 ++ 9781430248606_sourcecode/Ch01/Listing 1-29.cs | 28 ++ 9781430248606_sourcecode/Ch01/Listing 1-3.cs | 21 ++ 9781430248606_sourcecode/Ch01/Listing 1-30.cs | 26 ++ 9781430248606_sourcecode/Ch01/Listing 1-31.cs | 5 + 9781430248606_sourcecode/Ch01/Listing 1-32.cs | 4 + 9781430248606_sourcecode/Ch01/Listing 1-33.cs | 10 + 9781430248606_sourcecode/Ch01/Listing 1-35.cs | 8 + 9781430248606_sourcecode/Ch01/Listing 1-37.cs | 12 + 9781430248606_sourcecode/Ch01/Listing 1-38.cs | 29 ++ 9781430248606_sourcecode/Ch01/Listing 1-39.cs | 13 + 9781430248606_sourcecode/Ch01/Listing 1-4.cs | 17 ++ 9781430248606_sourcecode/Ch01/Listing 1-40.cs | 24 ++ 9781430248606_sourcecode/Ch01/Listing 1-41.cs | 19 ++ 9781430248606_sourcecode/Ch01/Listing 1-42.cs | 17 ++ 9781430248606_sourcecode/Ch01/Listing 1-43.cs | 18 ++ 9781430248606_sourcecode/Ch01/Listing 1-44.cs | 23 ++ 9781430248606_sourcecode/Ch01/Listing 1-45.cs | 23 ++ 9781430248606_sourcecode/Ch01/Listing 1-46.cs | 27 ++ 9781430248606_sourcecode/Ch01/Listing 1-47.cs | 31 +++ 9781430248606_sourcecode/Ch01/Listing 1-48.cs | 29 ++ 9781430248606_sourcecode/Ch01/Listing 1-49.cs | 26 ++ 9781430248606_sourcecode/Ch01/Listing 1-5.cs | 16 ++ 9781430248606_sourcecode/Ch01/Listing 1-50.cs | 35 +++ 9781430248606_sourcecode/Ch01/Listing 1-51.cs | 20 ++ 9781430248606_sourcecode/Ch01/Listing 1-52.cs | 36 +++ 9781430248606_sourcecode/Ch01/Listing 1-53.cs | 23 ++ 9781430248606_sourcecode/Ch01/Listing 1-54.cs | 35 +++ 9781430248606_sourcecode/Ch01/Listing 1-55.cs | 22 ++ 9781430248606_sourcecode/Ch01/Listing 1-56.cs | 20 ++ 9781430248606_sourcecode/Ch01/Listing 1-57.cs | 59 ++++ 9781430248606_sourcecode/Ch01/Listing 1-58.cs | 43 +++ 9781430248606_sourcecode/Ch01/Listing 1-59.cs | 26 ++ 9781430248606_sourcecode/Ch01/Listing 1-6.cs | 15 + 9781430248606_sourcecode/Ch01/Listing 1-60.cs | 40 +++ 9781430248606_sourcecode/Ch01/Listing 1-61.cs | 33 +++ 9781430248606_sourcecode/Ch01/Listing 1-62.cs | 22 ++ 9781430248606_sourcecode/Ch01/Listing 1-7.cs | 19 ++ 9781430248606_sourcecode/Ch01/Listing 1-8.cs | 16 ++ 9781430248606_sourcecode/Ch01/Listing 1-9.cs | 18 ++ 9781430248606_sourcecode/Ch01/Program.cs | 31 +++ .../Ch01/Properties/AssemblyInfo.cs | 36 +++ 9781430248606_sourcecode/Ch01/app.config | 3 + .../Ch01/bin/Release/Ch01.exe | Bin 0 -> 4608 bytes .../Ch01/bin/Release/Ch01.exe.config | 3 + .../Ch01/bin/Release/Ch01.pdb | Bin 0 -> 11776 bytes .../Debug/Ch01.csproj.FileListAbsolute.txt | 5 + ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 6630 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 .../Release/Ch01.csproj.FileListAbsolute.txt | 6 + .../Ch01/obj/x86/Release/Ch01.exe | Bin 0 -> 4608 bytes .../Ch01/obj/x86/Release/Ch01.pdb | Bin 0 -> 11776 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 5705 bytes 9781430248606_sourcecode/Ch02/Ch02.csproj | 72 +++++ 9781430248606_sourcecode/Ch02/Listing 2-1.cs | 19 ++ 9781430248606_sourcecode/Ch02/Listing 2-11.cs | 15 + 9781430248606_sourcecode/Ch02/Listing 2-12.cs | 16 ++ 9781430248606_sourcecode/Ch02/Listing 2-2.cs | 19 ++ 9781430248606_sourcecode/Ch02/Listing 2-3.cs | 22 ++ 9781430248606_sourcecode/Ch02/Listing 2-4.cs | 14 + 9781430248606_sourcecode/Ch02/Listing 2-5.cs | 25 ++ 9781430248606_sourcecode/Ch02/Listing 2-6.cs | 33 +++ 9781430248606_sourcecode/Ch02/Listing 2-8.cs | 36 +++ 9781430248606_sourcecode/Ch02/Program.cs | 21 ++ .../Ch02/Properties/AssemblyInfo.cs | 36 +++ 9781430248606_sourcecode/Ch02/app.config | 3 + .../Ch02/bin/Debug/Ch02.vshost.exe | Bin 0 -> 11600 bytes .../Ch02/bin/Debug/Ch02.vshost.exe.config | 3 + .../Ch02/bin/Release/Ch02.exe | Bin 0 -> 5120 bytes .../Ch02/bin/Release/Ch02.exe.config | 3 + .../Ch02/bin/Release/Ch02.pdb | Bin 0 -> 15872 bytes .../Ch02/bin/Release/Ch02.vshost.exe | Bin 0 -> 11600 bytes .../Ch02/bin/Release/Ch02.vshost.exe.config | 3 + .../Ch02/bin/Release/Ch02.vshost.exe.manifest | 11 + .../Debug/Ch02.csproj.FileListAbsolute.txt | 5 + ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 6630 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 .../Release/Ch02.csproj.FileListAbsolute.txt | 6 + .../Ch02/obj/x86/Release/Ch02.exe | Bin 0 -> 5120 bytes .../Ch02/obj/x86/Release/Ch02.pdb | Bin 0 -> 15872 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 5705 bytes 9781430248606_sourcecode/Ch03/Ch03.csproj | 72 +++++ 9781430248606_sourcecode/Ch03/Listing 3-1.cs | 29 ++ 9781430248606_sourcecode/Ch03/Listing 3-12.cs | 47 ++++ 9781430248606_sourcecode/Ch03/Listing 3-15.cs | 16 ++ 9781430248606_sourcecode/Ch03/Listing 3-17.cs | 15 + 9781430248606_sourcecode/Ch03/Listing 3-18.cs | 21 ++ 9781430248606_sourcecode/Ch03/Listing 3-4.cs | 34 +++ 9781430248606_sourcecode/Ch03/Listing 3-5.cs | 33 +++ 9781430248606_sourcecode/Ch03/Listing 3-6.cs | 33 +++ 9781430248606_sourcecode/Ch03/Listing 3-7.cs | 41 +++ 9781430248606_sourcecode/Ch03/Program.cs | 21 ++ .../Ch03/Properties/AssemblyInfo.cs | 36 +++ 9781430248606_sourcecode/Ch03/app.config | 3 + .../Ch03/bin/Debug/Ch03.vshost.exe | Bin 0 -> 11600 bytes .../Ch03/bin/Debug/Ch03.vshost.exe.config | 3 + .../Ch03/bin/Debug/Ch03.vshost.exe.manifest | 11 + .../Ch03/bin/Release/Ch03.exe | Bin 0 -> 4608 bytes .../Ch03/bin/Release/Ch03.exe.config | 3 + .../Ch03/bin/Release/Ch03.pdb | Bin 0 -> 13824 bytes .../Ch03/bin/Release/Ch03.vshost.exe | Bin 0 -> 11600 bytes .../Ch03/bin/Release/Ch03.vshost.exe.config | 3 + .../Ch03/bin/Release/Ch03.vshost.exe.manifest | 11 + .../Debug/Ch03.csproj.FileListAbsolute.txt | 5 + ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 6630 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 .../Release/Ch03.csproj.FileListAbsolute.txt | 6 + .../Ch03/obj/x86/Release/Ch03.exe | Bin 0 -> 4608 bytes .../Ch03/obj/x86/Release/Ch03.pdb | Bin 0 -> 13824 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 5705 bytes 9781430248606_sourcecode/Ch04/Ch04.csproj | 68 +++++ 9781430248606_sourcecode/Ch04/Listing 4-1.cs | 37 +++ 9781430248606_sourcecode/Ch04/Listing 4-10.cs | 28 ++ 9781430248606_sourcecode/Ch04/Listing 4-2.cs | 32 +++ 9781430248606_sourcecode/Ch04/Listing 4-6.cs | 27 ++ 9781430248606_sourcecode/Ch04/Listing 4-9.cs | 30 ++ 9781430248606_sourcecode/Ch04/Program.cs | 32 +++ .../Ch04/Properties/AssemblyInfo.cs | 36 +++ 9781430248606_sourcecode/Ch04/app.config | 3 + .../Ch04/bin/Debug/Ch04.vshost.exe | Bin 0 -> 11600 bytes .../Ch04/bin/Debug/Ch04.vshost.exe.config | 3 + .../Ch04/bin/Debug/Ch04.vshost.exe.manifest | 11 + .../Ch04/bin/Release/Ch04.exe | Bin 0 -> 5120 bytes .../Ch04/bin/Release/Ch04.exe.config | 3 + .../Ch04/bin/Release/Ch04.pdb | Bin 0 -> 13824 bytes .../Debug/Ch04.csproj.FileListAbsolute.txt | 5 + ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 6630 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 .../Release/Ch04.csproj.FileListAbsolute.txt | 6 + .../Ch04/obj/x86/Release/Ch04.exe | Bin 0 -> 5120 bytes .../Ch04/obj/x86/Release/Ch04.pdb | Bin 0 -> 13824 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 5705 bytes 9781430248606_sourcecode/Ch05/Ch05.csproj | 68 +++++ 9781430248606_sourcecode/Ch05/Listing 5-1.cs | 41 +++ 9781430248606_sourcecode/Ch05/Listing 5-11.cs | 33 +++ 9781430248606_sourcecode/Ch05/Listing 5-2.cs | 41 +++ 9781430248606_sourcecode/Ch05/Listing 5-5.cs | 30 ++ 9781430248606_sourcecode/Ch05/Listing 5-8.cs | 28 ++ 9781430248606_sourcecode/Ch05/Program.cs | 32 +++ .../Ch05/Properties/AssemblyInfo.cs | 36 +++ 9781430248606_sourcecode/Ch05/app.config | 3 + .../Ch05/bin/Debug/Ch05.vshost.exe | Bin 0 -> 11600 bytes .../Ch05/bin/Debug/Ch05.vshost.exe.config | 3 + .../Ch05/bin/Debug/Ch05.vshost.exe.manifest | 11 + .../Ch05/bin/Release/Ch05.exe | Bin 0 -> 4608 bytes .../Ch05/bin/Release/Ch05.exe.config | 3 + .../Ch05/bin/Release/Ch05.pdb | Bin 0 -> 13824 bytes .../Debug/Ch05.csproj.FileListAbsolute.txt | 5 + ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 6630 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 .../Release/Ch05.csproj.FileListAbsolute.txt | 6 + .../Ch05/obj/x86/Release/Ch05.exe | Bin 0 -> 4608 bytes .../Ch05/obj/x86/Release/Ch05.pdb | Bin 0 -> 13824 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 5705 bytes 9781430248606_sourcecode/Ch06/Ch06.csproj | 68 +++++ 9781430248606_sourcecode/Ch06/Listing 6-1.cs | 24 ++ 9781430248606_sourcecode/Ch06/Listing 6-5.cs | 26 ++ 9781430248606_sourcecode/Ch06/Listing 6-6.cs | 27 ++ 9781430248606_sourcecode/Ch06/Listing 6-7.cs | 30 ++ 9781430248606_sourcecode/Ch06/Listing 6-8.cs | 28 ++ 9781430248606_sourcecode/Ch06/Program.cs | 24 ++ .../Ch06/Properties/AssemblyInfo.cs | 36 +++ 9781430248606_sourcecode/Ch06/app.config | 3 + .../Ch06/bin/Debug/Ch06.vshost.exe | Bin 0 -> 11600 bytes .../Ch06/bin/Debug/Ch06.vshost.exe.config | 3 + .../Ch06/bin/Debug/Ch06.vshost.exe.manifest | 11 + .../Ch06/bin/Release/Ch06.exe | Bin 0 -> 5120 bytes .../Ch06/bin/Release/Ch06.exe.config | 3 + .../Ch06/bin/Release/Ch06.pdb | Bin 0 -> 11776 bytes .../Debug/Ch06.csproj.FileListAbsolute.txt | 5 + ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 6630 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 .../Release/Ch06.csproj.FileListAbsolute.txt | 6 + .../Ch06/obj/x86/Release/Ch06.exe | Bin 0 -> 5120 bytes .../Ch06/obj/x86/Release/Ch06.pdb | Bin 0 -> 11776 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 5705 bytes 9781430248606_sourcecode/Ch07/Ch07.csproj | 67 +++++ 9781430248606_sourcecode/Ch07/Listing 7-1.cs | 35 +++ 9781430248606_sourcecode/Ch07/Listing 7-10.cs | 34 +++ 9781430248606_sourcecode/Ch07/Listing 7-12.cs | 45 +++ 9781430248606_sourcecode/Ch07/Listing 7-16.cs | 31 +++ 9781430248606_sourcecode/Ch07/Program.cs | 32 +++ .../Ch07/Properties/AssemblyInfo.cs | 36 +++ 9781430248606_sourcecode/Ch07/app.config | 3 + .../Ch07/bin/Debug/Ch07.vshost.exe | Bin 0 -> 11600 bytes .../Ch07/bin/Debug/Ch07.vshost.exe.config | 3 + .../Ch07/bin/Debug/Ch07.vshost.exe.manifest | 11 + .../Ch07/bin/Release/Ch07.exe | Bin 0 -> 4608 bytes .../Ch07/bin/Release/Ch07.exe.config | 3 + .../Ch07/bin/Release/Ch07.pdb | Bin 0 -> 13824 bytes .../Debug/Ch07.csproj.FileListAbsolute.txt | 5 + ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 6630 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 .../Release/Ch07.csproj.FileListAbsolute.txt | 6 + .../Ch07/obj/x86/Release/Ch07.exe | Bin 0 -> 4608 bytes .../Ch07/obj/x86/Release/Ch07.pdb | Bin 0 -> 13824 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 5705 bytes 9781430248606_sourcecode/Ch08/Ch08.csproj | 63 +++++ 9781430248606_sourcecode/Ch08/Program.cs | 118 ++++++++ .../Ch08/Properties/AssemblyInfo.cs | 36 +++ 9781430248606_sourcecode/Ch08/app.config | 3 + .../Ch08/bin/Release/Ch08.exe | Bin 0 -> 4608 bytes .../Ch08/bin/Release/Ch08.exe.config | 3 + .../Ch08/bin/Release/Ch08.pdb | Bin 0 -> 13824 bytes .../Debug/Ch08.csproj.FileListAbsolute.txt | 5 + ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 6630 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 .../Release/Ch08.csproj.FileListAbsolute.txt | 6 + .../Ch08/obj/x86/Release/Ch08.exe | Bin 0 -> 4608 bytes .../Ch08/obj/x86/Release/Ch08.pdb | Bin 0 -> 13824 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 5705 bytes 9781430248606_sourcecode/Ch09/Ch09.csproj | 66 +++++ 9781430248606_sourcecode/Ch09/Listing 9-1.cs | 21 ++ 9781430248606_sourcecode/Ch09/Listing 9-3.cs | 34 +++ 9781430248606_sourcecode/Ch09/Program.cs | 21 ++ .../Ch09/Properties/AssemblyInfo.cs | 36 +++ 9781430248606_sourcecode/Ch09/app.config | 3 + .../Ch09/bin/Debug/Ch09.vshost.exe | Bin 0 -> 22392 bytes .../Ch09/bin/Debug/Ch09.vshost.exe.config | 3 + .../Ch09/bin/Debug/Ch09.vshost.exe.manifest | 11 + .../Ch09/bin/Release/Ch09.exe | Bin 0 -> 4608 bytes .../Ch09/bin/Release/Ch09.exe.config | 3 + .../Ch09/bin/Release/Ch09.pdb | Bin 0 -> 13824 bytes .../Debug/Ch09.csproj.FileListAbsolute.txt | 5 + ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 6630 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 .../Release/Ch09.csproj.FileListAbsolute.txt | 6 + .../Ch09/obj/x86/Release/Ch09.exe | Bin 0 -> 4608 bytes .../Ch09/obj/x86/Release/Ch09.pdb | Bin 0 -> 13824 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 5705 bytes 9781430248606_sourcecode/Ch10/Ch10.csproj | 76 ++++++ .../Ch10/Listing 10-10.cs | 14 + .../Ch10/Listing 10-11.cs | 23 ++ .../Ch10/Listing 10-14.cs | 23 ++ .../Ch10/Listing 10-16.cs | 20 ++ .../Ch10/Listing 10-19.cs | 18 ++ 9781430248606_sourcecode/Ch10/Listing 10-2.cs | 27 ++ .../Ch10/Listing 10-21.cs | 18 ++ .../Ch10/Listing 10-23.cs | 16 ++ .../Ch10/Listing 10-28.cs | 69 +++++ 9781430248606_sourcecode/Ch10/Listing 10-3.cs | 14 + 9781430248606_sourcecode/Ch10/Listing 10-5.cs | 19 ++ 9781430248606_sourcecode/Ch10/Listing 10-7.cs | 39 +++ 9781430248606_sourcecode/Ch10/Listing 10-8.cs | 18 ++ 9781430248606_sourcecode/Ch10/Program.cs | 12 + .../Ch10/Properties/AssemblyInfo.cs | 36 +++ 9781430248606_sourcecode/Ch10/app.config | 3 + .../Ch10/bin/Debug/Ch10.vshost.exe | Bin 0 -> 11600 bytes .../Ch10/bin/Debug/Ch10.vshost.exe.config | 3 + .../Ch10/bin/Debug/Ch10.vshost.exe.manifest | 11 + .../Ch10/bin/Release/Ch10.exe | Bin 0 -> 4608 bytes .../Ch10/bin/Release/Ch10.exe.config | 3 + .../Ch10/bin/Release/Ch10.pdb | Bin 0 -> 11776 bytes .../Debug/Ch10.csproj.FileListAbsolute.txt | 5 + ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 6630 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 .../Release/Ch10.csproj.FileListAbsolute.txt | 6 + .../Ch10/obj/x86/Release/Ch10.exe | Bin 0 -> 4608 bytes .../Ch10/obj/x86/Release/Ch10.pdb | Bin 0 -> 11776 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 5705 bytes 9781430248606_sourcecode/Ch11/Ch11.csproj | 72 +++++ 9781430248606_sourcecode/Ch11/Listing 11-1.cs | 23 ++ .../Ch11/Listing 11-10.cs | 26 ++ .../Ch11/Listing 11-11.cs | 27 ++ .../Ch11/Listing 11-13.cs | 26 ++ .../Ch11/Listing 11-20.cs | 25 ++ .../Ch11/Listing 11-25.cs | 31 +++ .../Ch11/Listing 11-27.cs | 38 +++ 9781430248606_sourcecode/Ch11/Listing 11-4.cs | 26 ++ 9781430248606_sourcecode/Ch11/Listing 11-6.cs | 27 ++ 9781430248606_sourcecode/Ch11/Program.cs | 30 ++ .../Ch11/Properties/AssemblyInfo.cs | 36 +++ 9781430248606_sourcecode/Ch11/app.config | 3 + .../Ch11/bin/Debug/Ch11.vshost.exe | Bin 0 -> 22392 bytes .../Ch11/bin/Debug/Ch11.vshost.exe.config | 3 + .../Ch11/bin/Debug/Ch11.vshost.exe.manifest | 11 + .../Ch11/bin/Release/Ch11.exe | Bin 0 -> 5120 bytes .../Ch11/bin/Release/Ch11.exe.config | 3 + .../Ch11/bin/Release/Ch11.pdb | Bin 0 -> 11776 bytes .../Debug/Ch11.csproj.FileListAbsolute.txt | 5 + ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 6630 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 .../Release/Ch11.csproj.FileListAbsolute.txt | 6 + .../Ch11/obj/x86/Release/Ch11.exe | Bin 0 -> 5120 bytes .../Ch11/obj/x86/Release/Ch11.pdb | Bin 0 -> 11776 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 5705 bytes 9781430248606_sourcecode/Ch12/Ch12.csproj | 110 ++++++++ 9781430248606_sourcecode/Ch12/Listing 12-1.cs | 23 ++ .../Ch12/Listing 12-10.cs | 29 ++ .../Ch12/Listing 12-11.cs | 26 ++ .../Ch12/Listing 12-12.cs | 63 +++++ .../Ch12/Listing 12-16.cs | 20 ++ .../Ch12/Listing 12-18.cs | 71 +++++ .../Ch12/Listing 12-21.cs | 70 +++++ .../Ch12/Listing 12-22.cs | 57 ++++ .../Ch12/Listing 12-23.cs | 21 ++ .../Ch12/Listing 12-25.cs | 25 ++ .../Ch12/Listing 12-27.cs | 27 ++ .../Ch12/Listing 12-29.cs | 19 ++ .../Ch12/Listing 12-31.cs | 23 ++ .../Ch12/Listing 12-32.cs | 20 ++ .../Ch12/Listing 12-33.cs | 22 ++ .../Ch12/Listing 12-34.cs | 23 ++ .../Ch12/Listing 12-35.cs | 23 ++ .../Ch12/Listing 12-37.cs | 23 ++ .../Ch12/Listing 12-39.cs | 24 ++ .../Ch12/Listing 12-41.cs | 30 ++ .../Ch12/Listing 12-43.cs | 22 ++ .../Ch12/Listing 12-44.cs | 24 ++ .../Ch12/Listing 12-47.cs | 21 ++ .../Ch12/Listing 12-49.cs | 25 ++ 9781430248606_sourcecode/Ch12/Listing 12-5.cs | 21 ++ .../Ch12/Listing 12-51.cs | 35 +++ .../Ch12/Listing 12-54.cs | 23 ++ .../Ch12/Listing 12-57.cs | 35 +++ .../Ch12/Listing 12-58.cs | 20 ++ .../Ch12/Listing 12-60.cs | 20 ++ .../Ch12/Listing 12-61.cs | 29 ++ .../Ch12/Listing 12-63.cs | 21 ++ .../Ch12/Listing 12-66.cs | 39 +++ .../Ch12/Listing 12-67.cs | 44 +++ .../Ch12/Listing 12-69.cs | 15 + 9781430248606_sourcecode/Ch12/Listing 12-7.cs | 21 ++ .../Ch12/Listing 12-72.cs | 14 + .../Ch12/Listing 12-75.cs | 15 + .../Ch12/Listing 12-76.cs | 18 ++ .../Ch12/Listing 12-77.cs | 22 ++ .../Ch12/Listing 12-78.cs | 35 +++ .../Ch12/Listing 12-79.cs | 58 ++++ .../Ch12/Listing 12-82.cs | 23 ++ .../Ch12/Listing 12-84.cs | 51 ++++ .../Ch12/Listing 12-85.cs | 27 ++ 9781430248606_sourcecode/Ch12/Listing 12-9.cs | 23 ++ 9781430248606_sourcecode/Ch12/Program.cs | 23 ++ .../Ch12/Properties/AssemblyInfo.cs | 36 +++ 9781430248606_sourcecode/Ch12/app.config | 3 + .../Ch12/bin/Debug/Ch12.vshost.exe | Bin 0 -> 22392 bytes .../Ch12/bin/Debug/Ch12.vshost.exe.config | 3 + .../Ch12/bin/Debug/Ch12.vshost.exe.manifest | 11 + .../Ch12/bin/Release/Ch12.exe | Bin 0 -> 5632 bytes .../Ch12/bin/Release/Ch12.exe.config | 3 + .../Ch12/bin/Release/Ch12.pdb | Bin 0 -> 13824 bytes .../Ch12/bin/Release/Ch12.vshost.exe | Bin 0 -> 11600 bytes .../Ch12/bin/Release/Ch12.vshost.exe.config | 3 + .../Ch12/bin/Release/Ch12.vshost.exe.manifest | 11 + .../Debug/Ch12.csproj.FileListAbsolute.txt | 5 + .../DesignTimeResolveAssemblyReferences.cache | Bin 0 -> 701 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 6630 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 .../Release/Ch12.csproj.FileListAbsolute.txt | 6 + .../Ch12/obj/x86/Release/Ch12.exe | Bin 0 -> 5632 bytes .../Ch12/obj/x86/Release/Ch12.pdb | Bin 0 -> 13824 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 5705 bytes 9781430248606_sourcecode/Ch13/Ch13.csproj | 75 +++++ .../Ch13/Ch13.csproj.user | 6 + 9781430248606_sourcecode/Ch13/Listing 13-1.cs | 22 ++ .../Ch13/Listing 13-10.cs | 32 +++ .../Ch13/Listing 13-12.cs | 26 ++ .../Ch13/Listing 13-14.cs | 29 ++ .../Ch13/Listing 13-16.cs | 61 +++++ .../Ch13/Listing 13-18.cs | 46 ++++ .../Ch13/Listing 13-19.cs | 21 ++ 9781430248606_sourcecode/Ch13/Listing 13-3.cs | 35 +++ 9781430248606_sourcecode/Ch13/Listing 13-4.cs | 33 +++ 9781430248606_sourcecode/Ch13/Listing 13-5.cs | 51 ++++ 9781430248606_sourcecode/Ch13/Listing 13-6.cs | 44 +++ 9781430248606_sourcecode/Ch13/Listing 13-8.cs | 13 + 9781430248606_sourcecode/Ch13/Program.cs | 12 + .../Ch13/Properties/AssemblyInfo.cs | 36 +++ 9781430248606_sourcecode/Ch13/app.config | 3 + .../Ch13/bin/Debug/Ch13.vshost.exe | Bin 0 -> 20880 bytes .../Ch13/bin/Debug/Ch13.vshost.exe.config | 3 + .../Ch13/bin/Debug/Ch13.vshost.exe.manifest | 11 + .../Ch13/bin/Release/Ch13.exe | Bin 0 -> 5120 bytes .../Ch13/bin/Release/Ch13.exe.config | 3 + .../Ch13/bin/Release/Ch13.pdb | Bin 0 -> 15872 bytes .../Ch13/bin/Release/Ch13.vshost.exe | Bin 0 -> 11608 bytes .../Ch13/bin/Release/Ch13.vshost.exe.config | 3 + .../Ch13/bin/Release/Ch13.vshost.exe.manifest | 11 + .../Debug/Ch13.csproj.FileListAbsolute.txt | 5 + ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 6630 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 .../Release/Ch13.csproj.FileListAbsolute.txt | 6 + .../Ch13/obj/x86/Release/Ch13.exe | Bin 0 -> 5120 bytes .../Ch13/obj/x86/Release/Ch13.pdb | Bin 0 -> 15872 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 5104 bytes 9781430248606_sourcecode/Ch14/Ch14.csproj | 87 ++++++ 9781430248606_sourcecode/Ch14/Listing 14-1.cs | 29 ++ .../Ch14/Listing 14-10.cs | 20 ++ .../Ch14/Listing 14-11.cs | 43 +++ .../Ch14/Listing 14-14.cs | 33 +++ .../Ch14/Listing 14-18.cs | 84 ++++++ .../Ch14/Listing 14-20.cs | 37 +++ .../Ch14/Listing 14-21.cs | 44 +++ .../Ch14/Listing 14-22.cs | 45 +++ .../Ch14/Listing 14-23.cs | 20 ++ .../Ch14/Listing 14-24.cs | 23 ++ .../Ch14/Listing 14-26.cs | 66 +++++ 9781430248606_sourcecode/Ch14/Listing 14-3.cs | 29 ++ .../Ch14/Listing 14-32.cs | 41 +++ .../Ch14/Listing 14-34.cs | 37 +++ .../Ch14/Listing 14-38.cs | 43 +++ 9781430248606_sourcecode/Ch14/Listing 14-4.cs | 25 ++ .../Ch14/Listing 14-40.cs | 48 ++++ .../Ch14/Listing 14-41.cs | 38 +++ .../Ch14/Listing 14-42.cs | 53 ++++ .../Ch14/Listing 14-43.cs | 38 +++ .../Ch14/Listing 14-44.cs | 29 ++ 9781430248606_sourcecode/Ch14/Listing 14-6.cs | 18 ++ 9781430248606_sourcecode/Ch14/Listing 14-8.cs | 28 ++ 9781430248606_sourcecode/Ch14/Listing 14-9.cs | 27 ++ 9781430248606_sourcecode/Ch14/Program.cs | 29 ++ .../Ch14/Properties/AssemblyInfo.cs | 36 +++ 9781430248606_sourcecode/Ch14/app.config | 3 + .../Ch14/bin/Release/Ch14.exe | Bin 0 -> 4608 bytes .../Ch14/bin/Release/Ch14.pdb | Bin 0 -> 11776 bytes .../Debug/Ch14.csproj.FileListAbsolute.txt | 5 + ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 6630 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 .../Release/Ch14.csproj.FileListAbsolute.txt | 5 + .../Ch14/obj/x86/Release/Ch14.exe | Bin 0 -> 4608 bytes .../Ch14/obj/x86/Release/Ch14.pdb | Bin 0 -> 11776 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 5810 bytes 9781430248606_sourcecode/Ch15/App.config | 6 + 9781430248606_sourcecode/Ch15/Ch15.csproj | 62 +++++ 9781430248606_sourcecode/Ch15/Listing 15-1.cs | 25 ++ 9781430248606_sourcecode/Ch15/Listing 15-2.cs | 20 ++ 9781430248606_sourcecode/Ch15/Listing 15-3.cs | 17 ++ 9781430248606_sourcecode/Ch15/Listing 15-5.cs | 13 + 9781430248606_sourcecode/Ch15/Program.cs | 25 ++ .../Ch15/Properties/AssemblyInfo.cs | 36 +++ .../Debug/Ch15.csproj.FileListAbsolute.txt | 5 + ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 6627 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 LICENSE.txt | 27 ++ README.md | 15 + contributing.md | 14 + 494 files changed, 9205 insertions(+) create mode 100644 9781430248606.jpg create mode 100644 9781430248606_sourcecode/BookExamples.sln create mode 100644 9781430248606_sourcecode/BookExamples.sln.docstates.suo create mode 100644 9781430248606_sourcecode/BookExamples.suo create mode 100644 9781430248606_sourcecode/BookExamples.v11.suo create mode 100644 9781430248606_sourcecode/CH08_GUI/App.config create mode 100644 9781430248606_sourcecode/CH08_GUI/CH08_GUI.csproj create mode 100644 9781430248606_sourcecode/CH08_GUI/Program.cs create mode 100644 9781430248606_sourcecode/CH08_GUI/Properties/AssemblyInfo.cs create mode 100644 9781430248606_sourcecode/CH08_GUI/Properties/Resources.Designer.cs create mode 100644 9781430248606_sourcecode/CH08_GUI/Properties/Resources.resx create mode 100644 9781430248606_sourcecode/CH08_GUI/Properties/Settings.Designer.cs create mode 100644 9781430248606_sourcecode/CH08_GUI/Properties/Settings.settings create mode 100644 9781430248606_sourcecode/CH08_GUI/bin/Debug/CH08_GUI.vshost.exe create mode 100644 9781430248606_sourcecode/CH08_GUI/bin/Debug/CH08_GUI.vshost.exe.config create mode 100644 9781430248606_sourcecode/CH08_GUI/bin/Debug/CH08_GUI.vshost.exe.manifest create mode 100644 9781430248606_sourcecode/CH08_GUI/frmMain.Designer.cs create mode 100644 9781430248606_sourcecode/CH08_GUI/frmMain.cs create mode 100644 9781430248606_sourcecode/CH08_GUI/frmMain.resx create mode 100644 9781430248606_sourcecode/CH08_GUI/obj/Debug/CH08_GUI.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/CH08_GUI/obj/Debug/DesignTimeResolveAssemblyReferences.cache create mode 100644 9781430248606_sourcecode/CH08_GUI/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/CH08_GUI/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs create mode 100644 9781430248606_sourcecode/CH08_GUI/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs create mode 100644 9781430248606_sourcecode/Ch01/Ch01.csproj create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-1.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-10.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-11.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-12.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-13.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-14.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-15.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-18.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-19.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-2.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-20.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-21.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-22.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-23.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-24.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-25.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-26.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-27.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-29.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-3.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-30.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-31.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-32.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-33.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-35.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-37.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-38.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-39.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-4.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-40.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-41.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-42.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-43.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-44.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-45.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-46.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-47.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-48.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-49.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-5.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-50.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-51.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-52.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-53.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-54.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-55.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-56.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-57.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-58.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-59.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-6.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-60.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-61.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-62.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-7.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-8.cs create mode 100644 9781430248606_sourcecode/Ch01/Listing 1-9.cs create mode 100644 9781430248606_sourcecode/Ch01/Program.cs create mode 100644 9781430248606_sourcecode/Ch01/Properties/AssemblyInfo.cs create mode 100644 9781430248606_sourcecode/Ch01/app.config create mode 100644 9781430248606_sourcecode/Ch01/bin/Release/Ch01.exe create mode 100644 9781430248606_sourcecode/Ch01/bin/Release/Ch01.exe.config create mode 100644 9781430248606_sourcecode/Ch01/bin/Release/Ch01.pdb create mode 100644 9781430248606_sourcecode/Ch01/obj/x86/Debug/Ch01.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch01/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch01/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs create mode 100644 9781430248606_sourcecode/Ch01/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs create mode 100644 9781430248606_sourcecode/Ch01/obj/x86/Release/Ch01.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch01/obj/x86/Release/Ch01.exe create mode 100644 9781430248606_sourcecode/Ch01/obj/x86/Release/Ch01.pdb create mode 100644 9781430248606_sourcecode/Ch01/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch02/Ch02.csproj create mode 100644 9781430248606_sourcecode/Ch02/Listing 2-1.cs create mode 100644 9781430248606_sourcecode/Ch02/Listing 2-11.cs create mode 100644 9781430248606_sourcecode/Ch02/Listing 2-12.cs create mode 100644 9781430248606_sourcecode/Ch02/Listing 2-2.cs create mode 100644 9781430248606_sourcecode/Ch02/Listing 2-3.cs create mode 100644 9781430248606_sourcecode/Ch02/Listing 2-4.cs create mode 100644 9781430248606_sourcecode/Ch02/Listing 2-5.cs create mode 100644 9781430248606_sourcecode/Ch02/Listing 2-6.cs create mode 100644 9781430248606_sourcecode/Ch02/Listing 2-8.cs create mode 100644 9781430248606_sourcecode/Ch02/Program.cs create mode 100644 9781430248606_sourcecode/Ch02/Properties/AssemblyInfo.cs create mode 100644 9781430248606_sourcecode/Ch02/app.config create mode 100644 9781430248606_sourcecode/Ch02/bin/Debug/Ch02.vshost.exe create mode 100644 9781430248606_sourcecode/Ch02/bin/Debug/Ch02.vshost.exe.config create mode 100644 9781430248606_sourcecode/Ch02/bin/Release/Ch02.exe create mode 100644 9781430248606_sourcecode/Ch02/bin/Release/Ch02.exe.config create mode 100644 9781430248606_sourcecode/Ch02/bin/Release/Ch02.pdb create mode 100644 9781430248606_sourcecode/Ch02/bin/Release/Ch02.vshost.exe create mode 100644 9781430248606_sourcecode/Ch02/bin/Release/Ch02.vshost.exe.config create mode 100644 9781430248606_sourcecode/Ch02/bin/Release/Ch02.vshost.exe.manifest create mode 100644 9781430248606_sourcecode/Ch02/obj/x86/Debug/Ch02.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch02/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch02/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs create mode 100644 9781430248606_sourcecode/Ch02/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs create mode 100644 9781430248606_sourcecode/Ch02/obj/x86/Release/Ch02.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch02/obj/x86/Release/Ch02.exe create mode 100644 9781430248606_sourcecode/Ch02/obj/x86/Release/Ch02.pdb create mode 100644 9781430248606_sourcecode/Ch02/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch03/Ch03.csproj create mode 100644 9781430248606_sourcecode/Ch03/Listing 3-1.cs create mode 100644 9781430248606_sourcecode/Ch03/Listing 3-12.cs create mode 100644 9781430248606_sourcecode/Ch03/Listing 3-15.cs create mode 100644 9781430248606_sourcecode/Ch03/Listing 3-17.cs create mode 100644 9781430248606_sourcecode/Ch03/Listing 3-18.cs create mode 100644 9781430248606_sourcecode/Ch03/Listing 3-4.cs create mode 100644 9781430248606_sourcecode/Ch03/Listing 3-5.cs create mode 100644 9781430248606_sourcecode/Ch03/Listing 3-6.cs create mode 100644 9781430248606_sourcecode/Ch03/Listing 3-7.cs create mode 100644 9781430248606_sourcecode/Ch03/Program.cs create mode 100644 9781430248606_sourcecode/Ch03/Properties/AssemblyInfo.cs create mode 100644 9781430248606_sourcecode/Ch03/app.config create mode 100644 9781430248606_sourcecode/Ch03/bin/Debug/Ch03.vshost.exe create mode 100644 9781430248606_sourcecode/Ch03/bin/Debug/Ch03.vshost.exe.config create mode 100644 9781430248606_sourcecode/Ch03/bin/Debug/Ch03.vshost.exe.manifest create mode 100644 9781430248606_sourcecode/Ch03/bin/Release/Ch03.exe create mode 100644 9781430248606_sourcecode/Ch03/bin/Release/Ch03.exe.config create mode 100644 9781430248606_sourcecode/Ch03/bin/Release/Ch03.pdb create mode 100644 9781430248606_sourcecode/Ch03/bin/Release/Ch03.vshost.exe create mode 100644 9781430248606_sourcecode/Ch03/bin/Release/Ch03.vshost.exe.config create mode 100644 9781430248606_sourcecode/Ch03/bin/Release/Ch03.vshost.exe.manifest create mode 100644 9781430248606_sourcecode/Ch03/obj/x86/Debug/Ch03.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch03/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch03/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs create mode 100644 9781430248606_sourcecode/Ch03/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs create mode 100644 9781430248606_sourcecode/Ch03/obj/x86/Release/Ch03.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch03/obj/x86/Release/Ch03.exe create mode 100644 9781430248606_sourcecode/Ch03/obj/x86/Release/Ch03.pdb create mode 100644 9781430248606_sourcecode/Ch03/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch04/Ch04.csproj create mode 100644 9781430248606_sourcecode/Ch04/Listing 4-1.cs create mode 100644 9781430248606_sourcecode/Ch04/Listing 4-10.cs create mode 100644 9781430248606_sourcecode/Ch04/Listing 4-2.cs create mode 100644 9781430248606_sourcecode/Ch04/Listing 4-6.cs create mode 100644 9781430248606_sourcecode/Ch04/Listing 4-9.cs create mode 100644 9781430248606_sourcecode/Ch04/Program.cs create mode 100644 9781430248606_sourcecode/Ch04/Properties/AssemblyInfo.cs create mode 100644 9781430248606_sourcecode/Ch04/app.config create mode 100644 9781430248606_sourcecode/Ch04/bin/Debug/Ch04.vshost.exe create mode 100644 9781430248606_sourcecode/Ch04/bin/Debug/Ch04.vshost.exe.config create mode 100644 9781430248606_sourcecode/Ch04/bin/Debug/Ch04.vshost.exe.manifest create mode 100644 9781430248606_sourcecode/Ch04/bin/Release/Ch04.exe create mode 100644 9781430248606_sourcecode/Ch04/bin/Release/Ch04.exe.config create mode 100644 9781430248606_sourcecode/Ch04/bin/Release/Ch04.pdb create mode 100644 9781430248606_sourcecode/Ch04/obj/x86/Debug/Ch04.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch04/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch04/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs create mode 100644 9781430248606_sourcecode/Ch04/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs create mode 100644 9781430248606_sourcecode/Ch04/obj/x86/Release/Ch04.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch04/obj/x86/Release/Ch04.exe create mode 100644 9781430248606_sourcecode/Ch04/obj/x86/Release/Ch04.pdb create mode 100644 9781430248606_sourcecode/Ch04/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch05/Ch05.csproj create mode 100644 9781430248606_sourcecode/Ch05/Listing 5-1.cs create mode 100644 9781430248606_sourcecode/Ch05/Listing 5-11.cs create mode 100644 9781430248606_sourcecode/Ch05/Listing 5-2.cs create mode 100644 9781430248606_sourcecode/Ch05/Listing 5-5.cs create mode 100644 9781430248606_sourcecode/Ch05/Listing 5-8.cs create mode 100644 9781430248606_sourcecode/Ch05/Program.cs create mode 100644 9781430248606_sourcecode/Ch05/Properties/AssemblyInfo.cs create mode 100644 9781430248606_sourcecode/Ch05/app.config create mode 100644 9781430248606_sourcecode/Ch05/bin/Debug/Ch05.vshost.exe create mode 100644 9781430248606_sourcecode/Ch05/bin/Debug/Ch05.vshost.exe.config create mode 100644 9781430248606_sourcecode/Ch05/bin/Debug/Ch05.vshost.exe.manifest create mode 100644 9781430248606_sourcecode/Ch05/bin/Release/Ch05.exe create mode 100644 9781430248606_sourcecode/Ch05/bin/Release/Ch05.exe.config create mode 100644 9781430248606_sourcecode/Ch05/bin/Release/Ch05.pdb create mode 100644 9781430248606_sourcecode/Ch05/obj/x86/Debug/Ch05.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch05/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch05/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs create mode 100644 9781430248606_sourcecode/Ch05/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs create mode 100644 9781430248606_sourcecode/Ch05/obj/x86/Release/Ch05.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch05/obj/x86/Release/Ch05.exe create mode 100644 9781430248606_sourcecode/Ch05/obj/x86/Release/Ch05.pdb create mode 100644 9781430248606_sourcecode/Ch05/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch06/Ch06.csproj create mode 100644 9781430248606_sourcecode/Ch06/Listing 6-1.cs create mode 100644 9781430248606_sourcecode/Ch06/Listing 6-5.cs create mode 100644 9781430248606_sourcecode/Ch06/Listing 6-6.cs create mode 100644 9781430248606_sourcecode/Ch06/Listing 6-7.cs create mode 100644 9781430248606_sourcecode/Ch06/Listing 6-8.cs create mode 100644 9781430248606_sourcecode/Ch06/Program.cs create mode 100644 9781430248606_sourcecode/Ch06/Properties/AssemblyInfo.cs create mode 100644 9781430248606_sourcecode/Ch06/app.config create mode 100644 9781430248606_sourcecode/Ch06/bin/Debug/Ch06.vshost.exe create mode 100644 9781430248606_sourcecode/Ch06/bin/Debug/Ch06.vshost.exe.config create mode 100644 9781430248606_sourcecode/Ch06/bin/Debug/Ch06.vshost.exe.manifest create mode 100644 9781430248606_sourcecode/Ch06/bin/Release/Ch06.exe create mode 100644 9781430248606_sourcecode/Ch06/bin/Release/Ch06.exe.config create mode 100644 9781430248606_sourcecode/Ch06/bin/Release/Ch06.pdb create mode 100644 9781430248606_sourcecode/Ch06/obj/x86/Debug/Ch06.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch06/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch06/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs create mode 100644 9781430248606_sourcecode/Ch06/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs create mode 100644 9781430248606_sourcecode/Ch06/obj/x86/Release/Ch06.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch06/obj/x86/Release/Ch06.exe create mode 100644 9781430248606_sourcecode/Ch06/obj/x86/Release/Ch06.pdb create mode 100644 9781430248606_sourcecode/Ch06/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch07/Ch07.csproj create mode 100644 9781430248606_sourcecode/Ch07/Listing 7-1.cs create mode 100644 9781430248606_sourcecode/Ch07/Listing 7-10.cs create mode 100644 9781430248606_sourcecode/Ch07/Listing 7-12.cs create mode 100644 9781430248606_sourcecode/Ch07/Listing 7-16.cs create mode 100644 9781430248606_sourcecode/Ch07/Program.cs create mode 100644 9781430248606_sourcecode/Ch07/Properties/AssemblyInfo.cs create mode 100644 9781430248606_sourcecode/Ch07/app.config create mode 100644 9781430248606_sourcecode/Ch07/bin/Debug/Ch07.vshost.exe create mode 100644 9781430248606_sourcecode/Ch07/bin/Debug/Ch07.vshost.exe.config create mode 100644 9781430248606_sourcecode/Ch07/bin/Debug/Ch07.vshost.exe.manifest create mode 100644 9781430248606_sourcecode/Ch07/bin/Release/Ch07.exe create mode 100644 9781430248606_sourcecode/Ch07/bin/Release/Ch07.exe.config create mode 100644 9781430248606_sourcecode/Ch07/bin/Release/Ch07.pdb create mode 100644 9781430248606_sourcecode/Ch07/obj/x86/Debug/Ch07.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch07/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch07/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs create mode 100644 9781430248606_sourcecode/Ch07/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs create mode 100644 9781430248606_sourcecode/Ch07/obj/x86/Release/Ch07.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch07/obj/x86/Release/Ch07.exe create mode 100644 9781430248606_sourcecode/Ch07/obj/x86/Release/Ch07.pdb create mode 100644 9781430248606_sourcecode/Ch07/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch08/Ch08.csproj create mode 100644 9781430248606_sourcecode/Ch08/Program.cs create mode 100644 9781430248606_sourcecode/Ch08/Properties/AssemblyInfo.cs create mode 100644 9781430248606_sourcecode/Ch08/app.config create mode 100644 9781430248606_sourcecode/Ch08/bin/Release/Ch08.exe create mode 100644 9781430248606_sourcecode/Ch08/bin/Release/Ch08.exe.config create mode 100644 9781430248606_sourcecode/Ch08/bin/Release/Ch08.pdb create mode 100644 9781430248606_sourcecode/Ch08/obj/x86/Debug/Ch08.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch08/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch08/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs create mode 100644 9781430248606_sourcecode/Ch08/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs create mode 100644 9781430248606_sourcecode/Ch08/obj/x86/Release/Ch08.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch08/obj/x86/Release/Ch08.exe create mode 100644 9781430248606_sourcecode/Ch08/obj/x86/Release/Ch08.pdb create mode 100644 9781430248606_sourcecode/Ch08/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch09/Ch09.csproj create mode 100644 9781430248606_sourcecode/Ch09/Listing 9-1.cs create mode 100644 9781430248606_sourcecode/Ch09/Listing 9-3.cs create mode 100644 9781430248606_sourcecode/Ch09/Program.cs create mode 100644 9781430248606_sourcecode/Ch09/Properties/AssemblyInfo.cs create mode 100644 9781430248606_sourcecode/Ch09/app.config create mode 100644 9781430248606_sourcecode/Ch09/bin/Debug/Ch09.vshost.exe create mode 100644 9781430248606_sourcecode/Ch09/bin/Debug/Ch09.vshost.exe.config create mode 100644 9781430248606_sourcecode/Ch09/bin/Debug/Ch09.vshost.exe.manifest create mode 100644 9781430248606_sourcecode/Ch09/bin/Release/Ch09.exe create mode 100644 9781430248606_sourcecode/Ch09/bin/Release/Ch09.exe.config create mode 100644 9781430248606_sourcecode/Ch09/bin/Release/Ch09.pdb create mode 100644 9781430248606_sourcecode/Ch09/obj/x86/Debug/Ch09.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch09/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch09/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs create mode 100644 9781430248606_sourcecode/Ch09/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs create mode 100644 9781430248606_sourcecode/Ch09/obj/x86/Release/Ch09.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch09/obj/x86/Release/Ch09.exe create mode 100644 9781430248606_sourcecode/Ch09/obj/x86/Release/Ch09.pdb create mode 100644 9781430248606_sourcecode/Ch09/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch10/Ch10.csproj create mode 100644 9781430248606_sourcecode/Ch10/Listing 10-10.cs create mode 100644 9781430248606_sourcecode/Ch10/Listing 10-11.cs create mode 100644 9781430248606_sourcecode/Ch10/Listing 10-14.cs create mode 100644 9781430248606_sourcecode/Ch10/Listing 10-16.cs create mode 100644 9781430248606_sourcecode/Ch10/Listing 10-19.cs create mode 100644 9781430248606_sourcecode/Ch10/Listing 10-2.cs create mode 100644 9781430248606_sourcecode/Ch10/Listing 10-21.cs create mode 100644 9781430248606_sourcecode/Ch10/Listing 10-23.cs create mode 100644 9781430248606_sourcecode/Ch10/Listing 10-28.cs create mode 100644 9781430248606_sourcecode/Ch10/Listing 10-3.cs create mode 100644 9781430248606_sourcecode/Ch10/Listing 10-5.cs create mode 100644 9781430248606_sourcecode/Ch10/Listing 10-7.cs create mode 100644 9781430248606_sourcecode/Ch10/Listing 10-8.cs create mode 100644 9781430248606_sourcecode/Ch10/Program.cs create mode 100644 9781430248606_sourcecode/Ch10/Properties/AssemblyInfo.cs create mode 100644 9781430248606_sourcecode/Ch10/app.config create mode 100644 9781430248606_sourcecode/Ch10/bin/Debug/Ch10.vshost.exe create mode 100644 9781430248606_sourcecode/Ch10/bin/Debug/Ch10.vshost.exe.config create mode 100644 9781430248606_sourcecode/Ch10/bin/Debug/Ch10.vshost.exe.manifest create mode 100644 9781430248606_sourcecode/Ch10/bin/Release/Ch10.exe create mode 100644 9781430248606_sourcecode/Ch10/bin/Release/Ch10.exe.config create mode 100644 9781430248606_sourcecode/Ch10/bin/Release/Ch10.pdb create mode 100644 9781430248606_sourcecode/Ch10/obj/x86/Debug/Ch10.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch10/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch10/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs create mode 100644 9781430248606_sourcecode/Ch10/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs create mode 100644 9781430248606_sourcecode/Ch10/obj/x86/Release/Ch10.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch10/obj/x86/Release/Ch10.exe create mode 100644 9781430248606_sourcecode/Ch10/obj/x86/Release/Ch10.pdb create mode 100644 9781430248606_sourcecode/Ch10/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch11/Ch11.csproj create mode 100644 9781430248606_sourcecode/Ch11/Listing 11-1.cs create mode 100644 9781430248606_sourcecode/Ch11/Listing 11-10.cs create mode 100644 9781430248606_sourcecode/Ch11/Listing 11-11.cs create mode 100644 9781430248606_sourcecode/Ch11/Listing 11-13.cs create mode 100644 9781430248606_sourcecode/Ch11/Listing 11-20.cs create mode 100644 9781430248606_sourcecode/Ch11/Listing 11-25.cs create mode 100644 9781430248606_sourcecode/Ch11/Listing 11-27.cs create mode 100644 9781430248606_sourcecode/Ch11/Listing 11-4.cs create mode 100644 9781430248606_sourcecode/Ch11/Listing 11-6.cs create mode 100644 9781430248606_sourcecode/Ch11/Program.cs create mode 100644 9781430248606_sourcecode/Ch11/Properties/AssemblyInfo.cs create mode 100644 9781430248606_sourcecode/Ch11/app.config create mode 100644 9781430248606_sourcecode/Ch11/bin/Debug/Ch11.vshost.exe create mode 100644 9781430248606_sourcecode/Ch11/bin/Debug/Ch11.vshost.exe.config create mode 100644 9781430248606_sourcecode/Ch11/bin/Debug/Ch11.vshost.exe.manifest create mode 100644 9781430248606_sourcecode/Ch11/bin/Release/Ch11.exe create mode 100644 9781430248606_sourcecode/Ch11/bin/Release/Ch11.exe.config create mode 100644 9781430248606_sourcecode/Ch11/bin/Release/Ch11.pdb create mode 100644 9781430248606_sourcecode/Ch11/obj/x86/Debug/Ch11.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch11/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch11/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs create mode 100644 9781430248606_sourcecode/Ch11/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs create mode 100644 9781430248606_sourcecode/Ch11/obj/x86/Release/Ch11.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch11/obj/x86/Release/Ch11.exe create mode 100644 9781430248606_sourcecode/Ch11/obj/x86/Release/Ch11.pdb create mode 100644 9781430248606_sourcecode/Ch11/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch12/Ch12.csproj create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-1.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-10.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-11.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-12.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-16.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-18.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-21.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-22.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-23.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-25.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-27.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-29.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-31.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-32.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-33.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-34.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-35.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-37.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-39.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-41.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-43.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-44.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-47.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-49.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-5.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-51.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-54.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-57.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-58.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-60.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-61.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-63.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-66.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-67.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-69.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-7.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-72.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-75.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-76.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-77.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-78.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-79.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-82.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-84.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-85.cs create mode 100644 9781430248606_sourcecode/Ch12/Listing 12-9.cs create mode 100644 9781430248606_sourcecode/Ch12/Program.cs create mode 100644 9781430248606_sourcecode/Ch12/Properties/AssemblyInfo.cs create mode 100644 9781430248606_sourcecode/Ch12/app.config create mode 100644 9781430248606_sourcecode/Ch12/bin/Debug/Ch12.vshost.exe create mode 100644 9781430248606_sourcecode/Ch12/bin/Debug/Ch12.vshost.exe.config create mode 100644 9781430248606_sourcecode/Ch12/bin/Debug/Ch12.vshost.exe.manifest create mode 100644 9781430248606_sourcecode/Ch12/bin/Release/Ch12.exe create mode 100644 9781430248606_sourcecode/Ch12/bin/Release/Ch12.exe.config create mode 100644 9781430248606_sourcecode/Ch12/bin/Release/Ch12.pdb create mode 100644 9781430248606_sourcecode/Ch12/bin/Release/Ch12.vshost.exe create mode 100644 9781430248606_sourcecode/Ch12/bin/Release/Ch12.vshost.exe.config create mode 100644 9781430248606_sourcecode/Ch12/bin/Release/Ch12.vshost.exe.manifest create mode 100644 9781430248606_sourcecode/Ch12/obj/x86/Debug/Ch12.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch12/obj/x86/Debug/DesignTimeResolveAssemblyReferences.cache create mode 100644 9781430248606_sourcecode/Ch12/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch12/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs create mode 100644 9781430248606_sourcecode/Ch12/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs create mode 100644 9781430248606_sourcecode/Ch12/obj/x86/Release/Ch12.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch12/obj/x86/Release/Ch12.exe create mode 100644 9781430248606_sourcecode/Ch12/obj/x86/Release/Ch12.pdb create mode 100644 9781430248606_sourcecode/Ch12/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch13/Ch13.csproj create mode 100644 9781430248606_sourcecode/Ch13/Ch13.csproj.user create mode 100644 9781430248606_sourcecode/Ch13/Listing 13-1.cs create mode 100644 9781430248606_sourcecode/Ch13/Listing 13-10.cs create mode 100644 9781430248606_sourcecode/Ch13/Listing 13-12.cs create mode 100644 9781430248606_sourcecode/Ch13/Listing 13-14.cs create mode 100644 9781430248606_sourcecode/Ch13/Listing 13-16.cs create mode 100644 9781430248606_sourcecode/Ch13/Listing 13-18.cs create mode 100644 9781430248606_sourcecode/Ch13/Listing 13-19.cs create mode 100644 9781430248606_sourcecode/Ch13/Listing 13-3.cs create mode 100644 9781430248606_sourcecode/Ch13/Listing 13-4.cs create mode 100644 9781430248606_sourcecode/Ch13/Listing 13-5.cs create mode 100644 9781430248606_sourcecode/Ch13/Listing 13-6.cs create mode 100644 9781430248606_sourcecode/Ch13/Listing 13-8.cs create mode 100644 9781430248606_sourcecode/Ch13/Program.cs create mode 100644 9781430248606_sourcecode/Ch13/Properties/AssemblyInfo.cs create mode 100644 9781430248606_sourcecode/Ch13/app.config create mode 100644 9781430248606_sourcecode/Ch13/bin/Debug/Ch13.vshost.exe create mode 100644 9781430248606_sourcecode/Ch13/bin/Debug/Ch13.vshost.exe.config create mode 100644 9781430248606_sourcecode/Ch13/bin/Debug/Ch13.vshost.exe.manifest create mode 100644 9781430248606_sourcecode/Ch13/bin/Release/Ch13.exe create mode 100644 9781430248606_sourcecode/Ch13/bin/Release/Ch13.exe.config create mode 100644 9781430248606_sourcecode/Ch13/bin/Release/Ch13.pdb create mode 100644 9781430248606_sourcecode/Ch13/bin/Release/Ch13.vshost.exe create mode 100644 9781430248606_sourcecode/Ch13/bin/Release/Ch13.vshost.exe.config create mode 100644 9781430248606_sourcecode/Ch13/bin/Release/Ch13.vshost.exe.manifest create mode 100644 9781430248606_sourcecode/Ch13/obj/x86/Debug/Ch13.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch13/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch13/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs create mode 100644 9781430248606_sourcecode/Ch13/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs create mode 100644 9781430248606_sourcecode/Ch13/obj/x86/Release/Ch13.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch13/obj/x86/Release/Ch13.exe create mode 100644 9781430248606_sourcecode/Ch13/obj/x86/Release/Ch13.pdb create mode 100644 9781430248606_sourcecode/Ch13/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch14/Ch14.csproj create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-1.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-10.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-11.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-14.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-18.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-20.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-21.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-22.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-23.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-24.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-26.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-3.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-32.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-34.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-38.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-4.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-40.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-41.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-42.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-43.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-44.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-6.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-8.cs create mode 100644 9781430248606_sourcecode/Ch14/Listing 14-9.cs create mode 100644 9781430248606_sourcecode/Ch14/Program.cs create mode 100644 9781430248606_sourcecode/Ch14/Properties/AssemblyInfo.cs create mode 100644 9781430248606_sourcecode/Ch14/app.config create mode 100644 9781430248606_sourcecode/Ch14/bin/Release/Ch14.exe create mode 100644 9781430248606_sourcecode/Ch14/bin/Release/Ch14.pdb create mode 100644 9781430248606_sourcecode/Ch14/obj/x86/Debug/Ch14.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch14/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch14/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs create mode 100644 9781430248606_sourcecode/Ch14/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs create mode 100644 9781430248606_sourcecode/Ch14/obj/x86/Release/Ch14.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch14/obj/x86/Release/Ch14.exe create mode 100644 9781430248606_sourcecode/Ch14/obj/x86/Release/Ch14.pdb create mode 100644 9781430248606_sourcecode/Ch14/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch15/App.config create mode 100644 9781430248606_sourcecode/Ch15/Ch15.csproj create mode 100644 9781430248606_sourcecode/Ch15/Listing 15-1.cs create mode 100644 9781430248606_sourcecode/Ch15/Listing 15-2.cs create mode 100644 9781430248606_sourcecode/Ch15/Listing 15-3.cs create mode 100644 9781430248606_sourcecode/Ch15/Listing 15-5.cs create mode 100644 9781430248606_sourcecode/Ch15/Program.cs create mode 100644 9781430248606_sourcecode/Ch15/Properties/AssemblyInfo.cs create mode 100644 9781430248606_sourcecode/Ch15/obj/Debug/Ch15.csproj.FileListAbsolute.txt create mode 100644 9781430248606_sourcecode/Ch15/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 9781430248606_sourcecode/Ch15/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs create mode 100644 9781430248606_sourcecode/Ch15/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs create mode 100644 LICENSE.txt create mode 100644 README.md create mode 100644 contributing.md diff --git a/9781430248606.jpg b/9781430248606.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c2be719c0caa9c8c5a3e2c86927b0d2c42d137b7 GIT binary patch literal 10137 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 qrr#(&CRNgY$(D*0_@kpPyY|{J4i+V literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/BookExamples.sln b/9781430248606_sourcecode/BookExamples.sln new file mode 100644 index 0000000..748b2a3 --- /dev/null +++ b/9781430248606_sourcecode/BookExamples.sln @@ -0,0 +1,258 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2012 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ch01", "Ch01\Ch01.csproj", "{49F8E9D5-92B3-4E2F-A488-0FC4E76D3038}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ch02", "Ch02\Ch02.csproj", "{BA648C1E-279B-4198-B305-2DF1C043CFA2}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ch03", "Ch03\Ch03.csproj", "{490B178E-CAD9-49D9-8B0F-AD699E18FFBF}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ch04", "Ch04\Ch04.csproj", "{D595E1D6-0386-47FF-98B6-1287D3D93ACF}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ch05", "Ch05\Ch05.csproj", "{F41576AF-3F4C-4BE0-8A8C-42C5E6A2B8B4}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ch06", "Ch06\Ch06.csproj", "{1ABE6AC4-49BD-425E-8C55-C31DC9709611}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ch07", "Ch07\Ch07.csproj", "{355AD8B6-3A7B-42D3-A769-1C5F2209F492}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ch08", "Ch08\Ch08.csproj", "{4C3FB5F4-D3A0-4568-8462-093C6D6D3F95}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ch09", "Ch09\Ch09.csproj", "{8D8C5025-7DE6-4199-BD89-2AA6D0F57FB6}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ch10", "Ch10\Ch10.csproj", "{0B6F3810-D7CB-497A-923B-D38CF61EAD44}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ch11", "Ch11\Ch11.csproj", "{3E8C37A0-B67E-4B8D-8463-0E27AE5CC063}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ch12", "Ch12\Ch12.csproj", "{AECCD015-05F0-47E3-973F-156EB64C956A}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ch13", "Ch13\Ch13.csproj", "{ACD755CA-C7A8-4059-9474-57AD95C0AA28}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ch14", "Ch14\Ch14.csproj", "{C31EF547-CA0A-477F-9A40-0D0347906E6B}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ch01-ReIntroducing", "Ch01-ReIntroducing", "{2F410106-2CDD-4C1A-8449-BC9E06AD5886}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ch02-ObjectAndMemory", "Ch02-ObjectAndMemory", "{3E57FE21-AECC-4327-BE95-43864DD790DB}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ch03-Parameters", "Ch03-Parameters", "{EDA05F60-5857-413C-8BAD-D845BB838739}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ch04-Methods", "Ch04-Methods", "{7183C46F-6D61-4C9E-B8F3-88F47FE11523}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ch05-AutomaticProperty", "Ch05-AutomaticProperty", "{B4C4F036-1C5D-4A34-854C-A98E87898F42}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ch06-Enum", "Ch06-Enum", "{C274216E-04F5-4871-863A-04CB4F825D56}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ch07-Delegate", "Ch07-Delegate", "{7F9BB7BA-5123-446F-97E9-EFBF89C73F65}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ch08-Event", "Ch08-Event", "{922F7B36-6AA2-49AF-8B26-B230964880D5}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ch09-Iterator", "Ch09-Iterator", "{4E956EF3-0FEE-4279-B8C6-A5C7255F4F14}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ch10-String", "Ch10-String", "{67D52602-1F0E-44A8-AE39-30FFA8428F6F}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ch11-Collections", "Ch11-Collections", "{DEC57D57-781A-4DFB-926B-933AB1F5CCE4}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ch12-Linq", "Ch12-Linq", "{13A08F52-15AC-4C93-933D-64356D5F8D28}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ch13-ExceptionManagement", "Ch13-ExceptionManagement", "{81E0DA60-44D3-4822-AABA-13B97AC18F0F}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ch14-Async", "Ch14-Async", "{75D599C0-0785-4819-8A3A-948589B9CA5B}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Ch15-Diagonsis", "Ch15-Diagonsis", "{3969995B-7367-4CA7-84D7-026B0AEEE26F}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CH08_GUI", "CH08_GUI\CH08_GUI.csproj", "{471B1E24-E545-4DDA-921E-A41BAD47490B}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Ch15", "Ch15\Ch15.csproj", "{36B857F9-F732-40C5-A582-95FEB9F485B0}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|Mixed Platforms = Debug|Mixed Platforms + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|Mixed Platforms = Release|Mixed Platforms + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {0B6F3810-D7CB-497A-923B-D38CF61EAD44}.Debug|Any CPU.ActiveCfg = Debug|x86 + {0B6F3810-D7CB-497A-923B-D38CF61EAD44}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 + {0B6F3810-D7CB-497A-923B-D38CF61EAD44}.Debug|Mixed Platforms.Build.0 = Debug|x86 + {0B6F3810-D7CB-497A-923B-D38CF61EAD44}.Debug|x86.ActiveCfg = Debug|x86 + {0B6F3810-D7CB-497A-923B-D38CF61EAD44}.Debug|x86.Build.0 = Debug|x86 + {0B6F3810-D7CB-497A-923B-D38CF61EAD44}.Release|Any CPU.ActiveCfg = Release|x86 + {0B6F3810-D7CB-497A-923B-D38CF61EAD44}.Release|Mixed Platforms.ActiveCfg = Release|x86 + {0B6F3810-D7CB-497A-923B-D38CF61EAD44}.Release|Mixed Platforms.Build.0 = Release|x86 + {0B6F3810-D7CB-497A-923B-D38CF61EAD44}.Release|x86.ActiveCfg = Release|x86 + {0B6F3810-D7CB-497A-923B-D38CF61EAD44}.Release|x86.Build.0 = Release|x86 + {1ABE6AC4-49BD-425E-8C55-C31DC9709611}.Debug|Any CPU.ActiveCfg = Debug|x86 + {1ABE6AC4-49BD-425E-8C55-C31DC9709611}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 + {1ABE6AC4-49BD-425E-8C55-C31DC9709611}.Debug|Mixed Platforms.Build.0 = Debug|x86 + {1ABE6AC4-49BD-425E-8C55-C31DC9709611}.Debug|x86.ActiveCfg = Debug|x86 + {1ABE6AC4-49BD-425E-8C55-C31DC9709611}.Debug|x86.Build.0 = Debug|x86 + {1ABE6AC4-49BD-425E-8C55-C31DC9709611}.Release|Any CPU.ActiveCfg = Release|x86 + {1ABE6AC4-49BD-425E-8C55-C31DC9709611}.Release|Mixed Platforms.ActiveCfg = Release|x86 + {1ABE6AC4-49BD-425E-8C55-C31DC9709611}.Release|Mixed Platforms.Build.0 = Release|x86 + {1ABE6AC4-49BD-425E-8C55-C31DC9709611}.Release|x86.ActiveCfg = Release|x86 + {1ABE6AC4-49BD-425E-8C55-C31DC9709611}.Release|x86.Build.0 = Release|x86 + {355AD8B6-3A7B-42D3-A769-1C5F2209F492}.Debug|Any CPU.ActiveCfg = Debug|x86 + {355AD8B6-3A7B-42D3-A769-1C5F2209F492}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 + {355AD8B6-3A7B-42D3-A769-1C5F2209F492}.Debug|Mixed Platforms.Build.0 = Debug|x86 + {355AD8B6-3A7B-42D3-A769-1C5F2209F492}.Debug|x86.ActiveCfg = Debug|x86 + {355AD8B6-3A7B-42D3-A769-1C5F2209F492}.Debug|x86.Build.0 = Debug|x86 + {355AD8B6-3A7B-42D3-A769-1C5F2209F492}.Release|Any CPU.ActiveCfg = Release|x86 + {355AD8B6-3A7B-42D3-A769-1C5F2209F492}.Release|Mixed Platforms.ActiveCfg = Release|x86 + {355AD8B6-3A7B-42D3-A769-1C5F2209F492}.Release|Mixed Platforms.Build.0 = Release|x86 + {355AD8B6-3A7B-42D3-A769-1C5F2209F492}.Release|x86.ActiveCfg = Release|x86 + {355AD8B6-3A7B-42D3-A769-1C5F2209F492}.Release|x86.Build.0 = Release|x86 + {36B857F9-F732-40C5-A582-95FEB9F485B0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {36B857F9-F732-40C5-A582-95FEB9F485B0}.Debug|Any CPU.Build.0 = Debug|Any CPU + {36B857F9-F732-40C5-A582-95FEB9F485B0}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU + {36B857F9-F732-40C5-A582-95FEB9F485B0}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU + {36B857F9-F732-40C5-A582-95FEB9F485B0}.Debug|x86.ActiveCfg = Debug|Any CPU + {36B857F9-F732-40C5-A582-95FEB9F485B0}.Release|Any CPU.ActiveCfg = Release|Any CPU + {36B857F9-F732-40C5-A582-95FEB9F485B0}.Release|Any CPU.Build.0 = Release|Any CPU + {36B857F9-F732-40C5-A582-95FEB9F485B0}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU + {36B857F9-F732-40C5-A582-95FEB9F485B0}.Release|Mixed Platforms.Build.0 = Release|Any CPU + {36B857F9-F732-40C5-A582-95FEB9F485B0}.Release|x86.ActiveCfg = Release|Any CPU + {3E8C37A0-B67E-4B8D-8463-0E27AE5CC063}.Debug|Any CPU.ActiveCfg = Debug|x86 + {3E8C37A0-B67E-4B8D-8463-0E27AE5CC063}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 + {3E8C37A0-B67E-4B8D-8463-0E27AE5CC063}.Debug|Mixed Platforms.Build.0 = Debug|x86 + {3E8C37A0-B67E-4B8D-8463-0E27AE5CC063}.Debug|x86.ActiveCfg = Debug|x86 + {3E8C37A0-B67E-4B8D-8463-0E27AE5CC063}.Debug|x86.Build.0 = Debug|x86 + {3E8C37A0-B67E-4B8D-8463-0E27AE5CC063}.Release|Any CPU.ActiveCfg = Release|x86 + {3E8C37A0-B67E-4B8D-8463-0E27AE5CC063}.Release|Mixed Platforms.ActiveCfg = Release|x86 + {3E8C37A0-B67E-4B8D-8463-0E27AE5CC063}.Release|Mixed Platforms.Build.0 = Release|x86 + {3E8C37A0-B67E-4B8D-8463-0E27AE5CC063}.Release|x86.ActiveCfg = Release|x86 + {3E8C37A0-B67E-4B8D-8463-0E27AE5CC063}.Release|x86.Build.0 = Release|x86 + {471B1E24-E545-4DDA-921E-A41BAD47490B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {471B1E24-E545-4DDA-921E-A41BAD47490B}.Debug|Any CPU.Build.0 = Debug|Any CPU + {471B1E24-E545-4DDA-921E-A41BAD47490B}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU + {471B1E24-E545-4DDA-921E-A41BAD47490B}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU + {471B1E24-E545-4DDA-921E-A41BAD47490B}.Debug|x86.ActiveCfg = Debug|Any CPU + {471B1E24-E545-4DDA-921E-A41BAD47490B}.Release|Any CPU.ActiveCfg = Release|Any CPU + {471B1E24-E545-4DDA-921E-A41BAD47490B}.Release|Any CPU.Build.0 = Release|Any CPU + {471B1E24-E545-4DDA-921E-A41BAD47490B}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU + {471B1E24-E545-4DDA-921E-A41BAD47490B}.Release|Mixed Platforms.Build.0 = Release|Any CPU + {471B1E24-E545-4DDA-921E-A41BAD47490B}.Release|x86.ActiveCfg = Release|Any CPU + {490B178E-CAD9-49D9-8B0F-AD699E18FFBF}.Debug|Any CPU.ActiveCfg = Debug|x86 + {490B178E-CAD9-49D9-8B0F-AD699E18FFBF}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 + {490B178E-CAD9-49D9-8B0F-AD699E18FFBF}.Debug|Mixed Platforms.Build.0 = Debug|x86 + {490B178E-CAD9-49D9-8B0F-AD699E18FFBF}.Debug|x86.ActiveCfg = Debug|x86 + {490B178E-CAD9-49D9-8B0F-AD699E18FFBF}.Debug|x86.Build.0 = Debug|x86 + {490B178E-CAD9-49D9-8B0F-AD699E18FFBF}.Release|Any CPU.ActiveCfg = Release|x86 + {490B178E-CAD9-49D9-8B0F-AD699E18FFBF}.Release|Mixed Platforms.ActiveCfg = Release|x86 + {490B178E-CAD9-49D9-8B0F-AD699E18FFBF}.Release|Mixed Platforms.Build.0 = Release|x86 + {490B178E-CAD9-49D9-8B0F-AD699E18FFBF}.Release|x86.ActiveCfg = Release|x86 + {490B178E-CAD9-49D9-8B0F-AD699E18FFBF}.Release|x86.Build.0 = Release|x86 + {49F8E9D5-92B3-4E2F-A488-0FC4E76D3038}.Debug|Any CPU.ActiveCfg = Debug|x86 + {49F8E9D5-92B3-4E2F-A488-0FC4E76D3038}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 + {49F8E9D5-92B3-4E2F-A488-0FC4E76D3038}.Debug|Mixed Platforms.Build.0 = Debug|x86 + {49F8E9D5-92B3-4E2F-A488-0FC4E76D3038}.Debug|x86.ActiveCfg = Debug|x86 + {49F8E9D5-92B3-4E2F-A488-0FC4E76D3038}.Debug|x86.Build.0 = Debug|x86 + {49F8E9D5-92B3-4E2F-A488-0FC4E76D3038}.Release|Any CPU.ActiveCfg = Release|x86 + {49F8E9D5-92B3-4E2F-A488-0FC4E76D3038}.Release|Mixed Platforms.ActiveCfg = Release|x86 + {49F8E9D5-92B3-4E2F-A488-0FC4E76D3038}.Release|Mixed Platforms.Build.0 = Release|x86 + {49F8E9D5-92B3-4E2F-A488-0FC4E76D3038}.Release|x86.ActiveCfg = Release|x86 + {49F8E9D5-92B3-4E2F-A488-0FC4E76D3038}.Release|x86.Build.0 = Release|x86 + {4C3FB5F4-D3A0-4568-8462-093C6D6D3F95}.Debug|Any CPU.ActiveCfg = Debug|x86 + {4C3FB5F4-D3A0-4568-8462-093C6D6D3F95}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 + {4C3FB5F4-D3A0-4568-8462-093C6D6D3F95}.Debug|Mixed Platforms.Build.0 = Debug|x86 + {4C3FB5F4-D3A0-4568-8462-093C6D6D3F95}.Debug|x86.ActiveCfg = Debug|x86 + {4C3FB5F4-D3A0-4568-8462-093C6D6D3F95}.Debug|x86.Build.0 = Debug|x86 + {4C3FB5F4-D3A0-4568-8462-093C6D6D3F95}.Release|Any CPU.ActiveCfg = Release|x86 + {4C3FB5F4-D3A0-4568-8462-093C6D6D3F95}.Release|Mixed Platforms.ActiveCfg = Release|x86 + {4C3FB5F4-D3A0-4568-8462-093C6D6D3F95}.Release|Mixed Platforms.Build.0 = Release|x86 + {4C3FB5F4-D3A0-4568-8462-093C6D6D3F95}.Release|x86.ActiveCfg = Release|x86 + {4C3FB5F4-D3A0-4568-8462-093C6D6D3F95}.Release|x86.Build.0 = Release|x86 + {8D8C5025-7DE6-4199-BD89-2AA6D0F57FB6}.Debug|Any CPU.ActiveCfg = Debug|x86 + {8D8C5025-7DE6-4199-BD89-2AA6D0F57FB6}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 + {8D8C5025-7DE6-4199-BD89-2AA6D0F57FB6}.Debug|Mixed Platforms.Build.0 = Debug|x86 + {8D8C5025-7DE6-4199-BD89-2AA6D0F57FB6}.Debug|x86.ActiveCfg = Debug|x86 + {8D8C5025-7DE6-4199-BD89-2AA6D0F57FB6}.Debug|x86.Build.0 = Debug|x86 + {8D8C5025-7DE6-4199-BD89-2AA6D0F57FB6}.Release|Any CPU.ActiveCfg = Release|x86 + {8D8C5025-7DE6-4199-BD89-2AA6D0F57FB6}.Release|Mixed Platforms.ActiveCfg = Release|x86 + {8D8C5025-7DE6-4199-BD89-2AA6D0F57FB6}.Release|Mixed Platforms.Build.0 = Release|x86 + {8D8C5025-7DE6-4199-BD89-2AA6D0F57FB6}.Release|x86.ActiveCfg = Release|x86 + {8D8C5025-7DE6-4199-BD89-2AA6D0F57FB6}.Release|x86.Build.0 = Release|x86 + {ACD755CA-C7A8-4059-9474-57AD95C0AA28}.Debug|Any CPU.ActiveCfg = Debug|x86 + {ACD755CA-C7A8-4059-9474-57AD95C0AA28}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 + {ACD755CA-C7A8-4059-9474-57AD95C0AA28}.Debug|Mixed Platforms.Build.0 = Debug|x86 + {ACD755CA-C7A8-4059-9474-57AD95C0AA28}.Debug|x86.ActiveCfg = Debug|x86 + {ACD755CA-C7A8-4059-9474-57AD95C0AA28}.Debug|x86.Build.0 = Debug|x86 + {ACD755CA-C7A8-4059-9474-57AD95C0AA28}.Release|Any CPU.ActiveCfg = Release|x86 + {ACD755CA-C7A8-4059-9474-57AD95C0AA28}.Release|Mixed Platforms.ActiveCfg = Release|x86 + {ACD755CA-C7A8-4059-9474-57AD95C0AA28}.Release|Mixed Platforms.Build.0 = Release|x86 + {ACD755CA-C7A8-4059-9474-57AD95C0AA28}.Release|x86.ActiveCfg = Release|x86 + {ACD755CA-C7A8-4059-9474-57AD95C0AA28}.Release|x86.Build.0 = Release|x86 + {AECCD015-05F0-47E3-973F-156EB64C956A}.Debug|Any CPU.ActiveCfg = Debug|x86 + {AECCD015-05F0-47E3-973F-156EB64C956A}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 + {AECCD015-05F0-47E3-973F-156EB64C956A}.Debug|Mixed Platforms.Build.0 = Debug|x86 + {AECCD015-05F0-47E3-973F-156EB64C956A}.Debug|x86.ActiveCfg = Debug|x86 + {AECCD015-05F0-47E3-973F-156EB64C956A}.Debug|x86.Build.0 = Debug|x86 + {AECCD015-05F0-47E3-973F-156EB64C956A}.Release|Any CPU.ActiveCfg = Release|x86 + {AECCD015-05F0-47E3-973F-156EB64C956A}.Release|Mixed Platforms.ActiveCfg = Release|x86 + {AECCD015-05F0-47E3-973F-156EB64C956A}.Release|Mixed Platforms.Build.0 = Release|x86 + {AECCD015-05F0-47E3-973F-156EB64C956A}.Release|x86.ActiveCfg = Release|x86 + {AECCD015-05F0-47E3-973F-156EB64C956A}.Release|x86.Build.0 = Release|x86 + {BA648C1E-279B-4198-B305-2DF1C043CFA2}.Debug|Any CPU.ActiveCfg = Debug|x86 + {BA648C1E-279B-4198-B305-2DF1C043CFA2}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 + {BA648C1E-279B-4198-B305-2DF1C043CFA2}.Debug|Mixed Platforms.Build.0 = Debug|x86 + {BA648C1E-279B-4198-B305-2DF1C043CFA2}.Debug|x86.ActiveCfg = Debug|x86 + {BA648C1E-279B-4198-B305-2DF1C043CFA2}.Debug|x86.Build.0 = Debug|x86 + {BA648C1E-279B-4198-B305-2DF1C043CFA2}.Release|Any CPU.ActiveCfg = Release|x86 + {BA648C1E-279B-4198-B305-2DF1C043CFA2}.Release|Mixed Platforms.ActiveCfg = Release|x86 + {BA648C1E-279B-4198-B305-2DF1C043CFA2}.Release|Mixed Platforms.Build.0 = Release|x86 + {BA648C1E-279B-4198-B305-2DF1C043CFA2}.Release|x86.ActiveCfg = Release|x86 + {BA648C1E-279B-4198-B305-2DF1C043CFA2}.Release|x86.Build.0 = Release|x86 + {C31EF547-CA0A-477F-9A40-0D0347906E6B}.Debug|Any CPU.ActiveCfg = Debug|x86 + {C31EF547-CA0A-477F-9A40-0D0347906E6B}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 + {C31EF547-CA0A-477F-9A40-0D0347906E6B}.Debug|Mixed Platforms.Build.0 = Debug|x86 + {C31EF547-CA0A-477F-9A40-0D0347906E6B}.Debug|x86.ActiveCfg = Debug|x86 + {C31EF547-CA0A-477F-9A40-0D0347906E6B}.Debug|x86.Build.0 = Debug|x86 + {C31EF547-CA0A-477F-9A40-0D0347906E6B}.Release|Any CPU.ActiveCfg = Release|x86 + {C31EF547-CA0A-477F-9A40-0D0347906E6B}.Release|Mixed Platforms.ActiveCfg = Release|x86 + {C31EF547-CA0A-477F-9A40-0D0347906E6B}.Release|Mixed Platforms.Build.0 = Release|x86 + {C31EF547-CA0A-477F-9A40-0D0347906E6B}.Release|x86.ActiveCfg = Release|x86 + {C31EF547-CA0A-477F-9A40-0D0347906E6B}.Release|x86.Build.0 = Release|x86 + {D595E1D6-0386-47FF-98B6-1287D3D93ACF}.Debug|Any CPU.ActiveCfg = Debug|x86 + {D595E1D6-0386-47FF-98B6-1287D3D93ACF}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 + {D595E1D6-0386-47FF-98B6-1287D3D93ACF}.Debug|Mixed Platforms.Build.0 = Debug|x86 + {D595E1D6-0386-47FF-98B6-1287D3D93ACF}.Debug|x86.ActiveCfg = Debug|x86 + {D595E1D6-0386-47FF-98B6-1287D3D93ACF}.Debug|x86.Build.0 = Debug|x86 + {D595E1D6-0386-47FF-98B6-1287D3D93ACF}.Release|Any CPU.ActiveCfg = Release|x86 + {D595E1D6-0386-47FF-98B6-1287D3D93ACF}.Release|Mixed Platforms.ActiveCfg = Release|x86 + {D595E1D6-0386-47FF-98B6-1287D3D93ACF}.Release|Mixed Platforms.Build.0 = Release|x86 + {D595E1D6-0386-47FF-98B6-1287D3D93ACF}.Release|x86.ActiveCfg = Release|x86 + {D595E1D6-0386-47FF-98B6-1287D3D93ACF}.Release|x86.Build.0 = Release|x86 + {F41576AF-3F4C-4BE0-8A8C-42C5E6A2B8B4}.Debug|Any CPU.ActiveCfg = Debug|x86 + {F41576AF-3F4C-4BE0-8A8C-42C5E6A2B8B4}.Debug|Mixed Platforms.ActiveCfg = Debug|x86 + {F41576AF-3F4C-4BE0-8A8C-42C5E6A2B8B4}.Debug|Mixed Platforms.Build.0 = Debug|x86 + {F41576AF-3F4C-4BE0-8A8C-42C5E6A2B8B4}.Debug|x86.ActiveCfg = Debug|x86 + {F41576AF-3F4C-4BE0-8A8C-42C5E6A2B8B4}.Debug|x86.Build.0 = Debug|x86 + {F41576AF-3F4C-4BE0-8A8C-42C5E6A2B8B4}.Release|Any CPU.ActiveCfg = Release|x86 + {F41576AF-3F4C-4BE0-8A8C-42C5E6A2B8B4}.Release|Mixed Platforms.ActiveCfg = Release|x86 + {F41576AF-3F4C-4BE0-8A8C-42C5E6A2B8B4}.Release|Mixed Platforms.Build.0 = Release|x86 + {F41576AF-3F4C-4BE0-8A8C-42C5E6A2B8B4}.Release|x86.ActiveCfg = Release|x86 + {F41576AF-3F4C-4BE0-8A8C-42C5E6A2B8B4}.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {0B6F3810-D7CB-497A-923B-D38CF61EAD44} = {67D52602-1F0E-44A8-AE39-30FFA8428F6F} + {1ABE6AC4-49BD-425E-8C55-C31DC9709611} = {C274216E-04F5-4871-863A-04CB4F825D56} + {355AD8B6-3A7B-42D3-A769-1C5F2209F492} = {7F9BB7BA-5123-446F-97E9-EFBF89C73F65} + {36B857F9-F732-40C5-A582-95FEB9F485B0} = {3969995B-7367-4CA7-84D7-026B0AEEE26F} + {3E8C37A0-B67E-4B8D-8463-0E27AE5CC063} = {DEC57D57-781A-4DFB-926B-933AB1F5CCE4} + {471B1E24-E545-4DDA-921E-A41BAD47490B} = {922F7B36-6AA2-49AF-8B26-B230964880D5} + {490B178E-CAD9-49D9-8B0F-AD699E18FFBF} = {EDA05F60-5857-413C-8BAD-D845BB838739} + {49F8E9D5-92B3-4E2F-A488-0FC4E76D3038} = {2F410106-2CDD-4C1A-8449-BC9E06AD5886} + {4C3FB5F4-D3A0-4568-8462-093C6D6D3F95} = {922F7B36-6AA2-49AF-8B26-B230964880D5} + {8D8C5025-7DE6-4199-BD89-2AA6D0F57FB6} = {4E956EF3-0FEE-4279-B8C6-A5C7255F4F14} + {ACD755CA-C7A8-4059-9474-57AD95C0AA28} = {81E0DA60-44D3-4822-AABA-13B97AC18F0F} + {AECCD015-05F0-47E3-973F-156EB64C956A} = {13A08F52-15AC-4C93-933D-64356D5F8D28} + {BA648C1E-279B-4198-B305-2DF1C043CFA2} = {3E57FE21-AECC-4327-BE95-43864DD790DB} + {C31EF547-CA0A-477F-9A40-0D0347906E6B} = {75D599C0-0785-4819-8A3A-948589B9CA5B} + {D595E1D6-0386-47FF-98B6-1287D3D93ACF} = {7183C46F-6D61-4C9E-B8F3-88F47FE11523} + {F41576AF-3F4C-4BE0-8A8C-42C5E6A2B8B4} = {B4C4F036-1C5D-4A34-854C-A98E87898F42} + EndGlobalSection +EndGlobal diff --git a/9781430248606_sourcecode/BookExamples.sln.docstates.suo b/9781430248606_sourcecode/BookExamples.sln.docstates.suo new file mode 100644 index 0000000000000000000000000000000000000000..b4a66c2f46237a1271b0710d67757fc97ce0701d GIT binary patch literal 8198 zcmeHKO>5LZ7|tpxsNk)Nr-Fh9nPrkpzN&~xCMnWZu&a0(k#u(2O}p8NldSY33;q^= zh%ER6yb4}Cdhp~gaMJB=KNRT}!L`hUN#2>s*YnKtK9gM4-dxkPOWOMeUVw7jLtgAg z9=3pI1SUX{5d$B&E`V`}BFDxiG~GcJcA!q`U6U5M;G5Ov0$JmHi?HpSiIUzipl*7C`bHc%DAGaTAQR|1hQN<>c{cQ6=)pLSLvv6)TuBQWr}BZ1s&Ik4D3~b7QnJgt z#Lsh_lnGhpH0hF6)}CKXN=BMbqv!LhY`x29$;G@w!i07hfg~#^7u|HNnYY)PBUGfd zQCXknVXPz^(@j-?uT0 zEhi4_edTzya=f!D$2)^^KF>Poi>${)O389sl=teSI&DrgG_7$#v%kN4`RdE=#nSaaAw%2j=i~T{0irW>|LtioV#`8_t@*H8HMHQv*nDSd{W$%iJw~UFiUGxd zV&I=MFzrw8(f`F~eb#4Fd{>?XJF@)dVfS!F#>(;!2~m+^Krx^gPz)#r6a$I@#eiZ! PF`yVw3@8Tv4g)^{Z0^H> literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/BookExamples.suo b/9781430248606_sourcecode/BookExamples.suo new file mode 100644 index 0000000000000000000000000000000000000000..3f8e7c9f9c95c5617cee80793e7e85c628aadbd4 GIT binary patch literal 305664 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 !b3ESdOtSAiji@}Gzod,#3V^hP-jn#*~2L&cld+u3rJu9wf#r3SX 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 RQg6;ZrDzXpEnpAU{|A#fpyB`k literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/BookExamples.v11.suo b/9781430248606_sourcecode/BookExamples.v11.suo new file mode 100644 index 0000000000000000000000000000000000000000..6c7c9c383b86c1e9d48de3c66b1afc92ad494a03 GIT binary patch literal 638976 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�w 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 Is~>RwA6*~$T>t<8 literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/CH08_GUI/App.config b/9781430248606_sourcecode/CH08_GUI/App.config new file mode 100644 index 0000000..8e15646 --- /dev/null +++ b/9781430248606_sourcecode/CH08_GUI/App.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/CH08_GUI/CH08_GUI.csproj b/9781430248606_sourcecode/CH08_GUI/CH08_GUI.csproj new file mode 100644 index 0000000..e9125cc --- /dev/null +++ b/9781430248606_sourcecode/CH08_GUI/CH08_GUI.csproj @@ -0,0 +1,88 @@ + + + + + Debug + AnyCPU + {471B1E24-E545-4DDA-921E-A41BAD47490B} + WinExe + Properties + CH08_GUI + CH08_GUI + v4.5 + 512 + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + + + + + + + + + + Form + + + frmMain.cs + + + + + frmMain.cs + + + ResXFileCodeGenerator + Resources.Designer.cs + Designer + + + True + Resources.resx + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + True + Settings.settings + True + + + + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/CH08_GUI/Program.cs b/9781430248606_sourcecode/CH08_GUI/Program.cs new file mode 100644 index 0000000..64f7e8b --- /dev/null +++ b/9781430248606_sourcecode/CH08_GUI/Program.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace CH08_GUI +{ + static class Program + { + ///

+ /// The main entry point for the application. + /// + [STAThread] + static void Main() + { + Application.EnableVisualStyles(); + Application.SetCompatibleTextRenderingDefault(false); + Application.Run(new frmMain()); + } + } +} diff --git a/9781430248606_sourcecode/CH08_GUI/Properties/AssemblyInfo.cs b/9781430248606_sourcecode/CH08_GUI/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..b8bf1b2 --- /dev/null +++ b/9781430248606_sourcecode/CH08_GUI/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("CH08_GUI")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("CH08_GUI")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("e07feae8-a359-4660-9f5d-be1c4220e653")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/9781430248606_sourcecode/CH08_GUI/Properties/Resources.Designer.cs b/9781430248606_sourcecode/CH08_GUI/Properties/Resources.Designer.cs new file mode 100644 index 0000000..5cb7070 --- /dev/null +++ b/9781430248606_sourcecode/CH08_GUI/Properties/Resources.Designer.cs @@ -0,0 +1,71 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.17626 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace CH08_GUI.Properties +{ + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources + { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() + { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager + { + get + { + if ((resourceMan == null)) + { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("CH08_GUI.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture + { + get + { + return resourceCulture; + } + set + { + resourceCulture = value; + } + } + } +} diff --git a/9781430248606_sourcecode/CH08_GUI/Properties/Resources.resx b/9781430248606_sourcecode/CH08_GUI/Properties/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/9781430248606_sourcecode/CH08_GUI/Properties/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/9781430248606_sourcecode/CH08_GUI/Properties/Settings.Designer.cs b/9781430248606_sourcecode/CH08_GUI/Properties/Settings.Designer.cs new file mode 100644 index 0000000..ba78347 --- /dev/null +++ b/9781430248606_sourcecode/CH08_GUI/Properties/Settings.Designer.cs @@ -0,0 +1,30 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.17626 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace CH08_GUI.Properties +{ + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase + { + + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); + + public static Settings Default + { + get + { + return defaultInstance; + } + } + } +} diff --git a/9781430248606_sourcecode/CH08_GUI/Properties/Settings.settings b/9781430248606_sourcecode/CH08_GUI/Properties/Settings.settings new file mode 100644 index 0000000..3964565 --- /dev/null +++ b/9781430248606_sourcecode/CH08_GUI/Properties/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/9781430248606_sourcecode/CH08_GUI/bin/Debug/CH08_GUI.vshost.exe b/9781430248606_sourcecode/CH08_GUI/bin/Debug/CH08_GUI.vshost.exe new file mode 100644 index 0000000000000000000000000000000000000000..212bd7f4bd85638db6f1427777e53df0c87cd21a GIT binary patch literal 22392 zcmeHv2|Sct`~N*->{&v#EMt!{?%8KV*(JLXLTOe;7{(B#EJfu>2^CQxEn1{d+E=Yg zl4y~%YD0UJ`k#Ab>3Mpe_x=6;@AG+n@8|csYp(k~`*p5!o$q~}>ztcsa4sYPK@bM~ zzJG_HdT>WBJ2Cxpk_M6$^^Yh*wX#QNq74g4ec@z_|QAY90d#d+!Hm2Bnx#o*Vc|p*rY)z{jEz_^J-R>gD#_lzx8P*4# z37CCHf39Rp6O@kOi;y`R6&;A1+s!J?|jCywoOHu=R!g ziv6{_t2^&h)MZodmo%<@qZRkLtn;hX`41gMZs!%-$0>A5 zB%d#QBemgmj6^;0tM?I_`mERc3rmB~Y3iXTO@JUd3sqPG@*5J__(>WdX39+QO`r*$ zO($s~F|f+RLX$^65xwM?rB%pbq5Ry#*^2k|$fn>~d zK>ZjHWXuyuI2cESiFi6PI+9QnpgX|;8Z80pA^|}`K(~z;A|XE}JRZprB|W5{Mza`@ z2s|TdXyiJ}%?aF>fpDoL2s=axSV(4YfvQlhYG_Cn2@IGJA@w130PKiW4WvWJGoqS^ znjk;WEV$%;a47`^LB2qtmO+t#9)mUkdR-jz8F~tyl~4$sBBnFNlr5$yV!A<0tHt!H zm}1cHP*RYon9e{WW!YkyBBn>s8_`nGOLRM$0euI|NkNJdNDNh?9W4i~lrV%8q3sgu zB&5Vt5o!m|YzPaaBn8=E)`?jkQg=kkD3mg!0T}|hA|W3Gq+jWpVdB08i9_olE~pU& zjfcVjY-s_i0U3y?xi|(drgSm27gIMe^%c|EV#*X#zL>^|X|kB61F8Y76hE&8R0k>o zR1PWw)DYSa=p-;MNX%g|Jq;a{=zyA`n-UM9)6jE?r+`XhIsmo8yo8=Zu9!Zk3-ZRu zK{&`A+K9p-vmH=Xhz96HXd0kKkQ1Pj#gr(fQ=tG5;|Rq8x=5U7E3{q`2eF}RAZ9-F z0MK}-2hb34%u=WyJpTq6qj69^6a#V=LphRmPz}@seS$D)Ll^@D38V%=mJkled@KN? ze&8j7M8nrj$X`4%h_(%1!}&ni##6vah~iFz65}HT@ggDt$4%lw&M_ikvX6itBZ55n zY@r}tz!TvD`0)wMD26D3!x!LYfXrZG_y`4TZhSlx9nTgBqxdX{ksL4LMnm4LNG@9h z;n*U95b|X5V}2yy{1ReB{AeyNfGdpW3t~VOkUvux&K0?U_aAqGKseuC1g0D-LB#!i z5w{o-S15>OaD|C{&?w|6hz2b2Sy9~4B90ym5FH!EXU2#|V~3c+`EhwsfGf}}WFH^T zjb=q9`}0L(iw{RTapT!Sek_u8w3g9C9y1|IWDgpN|6?lBJToTwj|o6joCNk5u7>M# z6vQSA`QZ`2NcthAKUU_#kK+ErM7J28Kp4$LxMxQFA=ij7;spspM2-xmh#M8f7jYd0 zVAz>#(I1L3+&CNucqzYv={HyPpjk9|S1GerqP zF32&OI?Uz|eL=(uN()Cu|A!)p#Vz8q_@D!SEbYW+hQ}b9%8rMexU7WmaOO|yG86}t z5X^!hjRK8`1?LAkk|cf_GseSn$3_m>*Mms2Jl%r2WveK^h*8 zg2pg}Jle-3LvAsNg85toW+bo(g|ZwwGO4L9b{pH=aN~3qtb$|?Ees9NB0X3MG5{ME zLSe8dlp;dVl2|lKQBe{+j-Q1@$fT7*#sJ{bAgBOTC50du2>UVY@d)Z6uNCR$fxvTB zxBIr@mhDoi8dP}RJsA0F&GIi2iBU^Eit_XhOntWTcI&;<9UE^@R1MI%@sG-*7@b#^s;hT{LM9YsxO}6y1SawxT%#%O`J^ z%-yGSZoRFkPPU38R}&k3Dxc&Td?O!&;IK^f^sv)7a>WcA%ueacoZ~l zSQEu)4QZpG2_ssEbrc9=1wygzLeL}>WHgd=rV2X*;@BY+2Vnw?Ct&>?A&7{AaAzv9 zBYDSGgTvZKMPbDl6^|7Hr4lA`Il#I{IKktA6-9>01Og5ZK?*2HMjQjy zmcU+uEKraM&pMRD2^9$hQSqT1ZX$=D80x|Y5apA=isG}u?8n8&%!i<*Gf+^59Sjpl zFmkbJ;v1d>|CYNGB7>L=v8er2WVUoo`Wvxo=&FG*%UgD%wqCjHVIFq zGf7k;9?zi@$Ye5`19)Vz*)$fJPNwq+EDnW>hq*)w%qEh^L@E={Ay6nBCJm;MX=DnS zMr6~-pdk*E$|G{wFrLeylPM%NnZ}_LIaE9mREVb%*fcJI$i%}um_Vch*4cCl3#L+u z6dowdf(ZmNiNGXrsU#o{CYeVf5@-Yx5l>?g$wWGn%!FxF9*s*TatJ&;k<6pB0na=l zi$ws;0bzn4Oe4|BFp0;avbjtmkT0FUVbeHVn9E^u07DcYZw{9TIHPcgFoDS-lX;+T zG?)iM95R>3=5U!@I++Oi!~tC;kSTZ;nMb6s0c)Tri^HMwXfzs`2$HEJHW)obP&_K= zCzC`Xk=aBx74(*l$Maw?c1$LZ$RU$BOgw=Fgv;TwiBvL+m=1y7&?rEtTrQqQ;n83! zg+e31bkG|-o-mo0q|5BOk@)ABqEc=!V@SQ4ooC-s6YZVDuqR%6KS9c0vB`% zPXY}QU=9^9PXG!Db66x2lSF5eXcRUVPb3k6f)EgPIV=hbBoc{aI?UtpXg~^V5|Pbf z(g*}P%wYo&5@9Zn$DvWk1R{q{0>cZ#JQA74Q8Fm;Is_mXn6(JL3|+&11q5$(0N#8CGyOAI?D#R97}K;O=N=PwIv+k1 z_91h}o^c2)foaVG(^v@JWuamlEt<>W1Dhf=F&_9e5IYb&{V*=s;;67NJQ!Xo1U$WBG1_2(9ic_-@(tZVF0q7lel6#S!_vjxj0S~ zvK|EO|?An2HQZHB}k&m=$t zAO={G20+fh7s7ztAaBSEgn`QiaskiCbsW?CZD<8352kl;1F|Ya?$gDoLn}gLUXHz- zKmY}5WkNzw4{lo6gWe$h0Y(wHhRPxm7m3TofPO@c>CKCFmj@2ywg>G;fjcsmL$$<Bn2=VbrR7jnCvA|L&1zQRB5XV`b5d7i%wq8H;0%=ESec5*S&O96AGqf_g$u zEFN$CC`;-A@B558jpOLYwc`kV!fA_f%iFxl_U~}C`o!Ig?;_xxtJ+Q*FEePv)h$~x zKyG2^v>o)-^S;JA{PNH^^q_g@-kr-oUN)?4Jt>p$Av<;ryRA1{@A(=>V@`0(^2NE) zQ}-lZ4WumYKBgS7r?7A3931ETK2zDbdh7{rY)`7MDO!O(3m-ZyKTlst*m&#EPO?f? zahbf_)BKRt1O6qa-)V(8TmXneJ8Z9X)Eg=ExB9V$1b&T3XKgDRMy+}f>Jk-4R98Rju~AMR z4nQ*KW4vKc*uB)P)HTaFLL`c{wz6Uiqj1q9n-Oe5v{meUJ`!sMR+)%rJ>ClFBXGq6 zH3S+M2GcBwcuU~lf^i@d96Zc33Wf24J>Z$cVHlk??MD*}7A*Kx6I|h+)-4*VLSWhf z6+%JVLMTyty^8rNj|AE1V*Y}&Q5@l<6}N4jqo-&tx;e>8_2KNuiD%?Vhq4D>94>ez zjei>XJ^|CRsYf!wX8fno|0VtI3T^=k(k;C7`&S3YH7}7~i$| z-6I)~sne_)Z(Qy1HjMp*(MNB0FRot`x9vnNXw6<2(^@9mk`xjXJgds2gnJd^FNlja1QRE58s=;b0+y~i>=DJUl+-X&jHI%q#U*Pg4;@@3-Zy}=XJg}@4Ta{} z8*-Pw*mMwJ)DeJD<--^yskL5=q!WK9EO^0Rf&&I(MFSY6If_yKVBg6S_`suMM-d99 z637JL48+qBgaWRckszF2^Otb;JA^WWO@P7!z|xCxgsRRjd-P*pf|@qC8@-iL z`Mr6+VFQ%=EFq>xvpZc;wV|B}ozO2$oQhGvG+;`1esyF>m0>W4i+D5M}lx2dkt1`B| zZrqDCq@R+tgPTjzSdxDKZBJ1$po*JwfwhJvo;Ry z@*qzb40*op(r!kfdDxU~T_#GLhPTyb3B!mc3nV2u2E3Auo|P$_m^CFr)0~wNe(PNq zg%ZJ7@7c70ic3s42JfH3nvPc+)N-PkI_*8(FF)kto`bGy1Neaix>^vRcv%c?uK9u1K^ z^uqrGOE=1FJKKHWQQ5%J&dl{(KBM|zTp`Dlcf8?EDC^kT_qHYO4v<0#cr)R(5EE}qr0mFx3vUTe9-7C-qx0BL01kaQg4Yb6 z$7ci2Db_wg6d@3T9Zj(v1$H)wcmlvEA_1Tj*n|)V2}tnoH1YnK@pM2qJ5&qioYdVo z4~umuN@PS$n|Mpmc;(HD`QJ9ED?jM87A@62WK~Ld_5J=C2QQ;mA#|4Uyl!wJQD7gv+V%i>W-HDw>**g!$d3p4mEi8=Nmb! z!7G=-T<|`J%~T)T!A(MQ}NMDS#O+e zpY4%>KDv}`ZVp*x%IIFWYvx;*CaMi>bM1oAZ5o?%u8dz3U~_tpY?wsLFx1QiP!kL* zAyA=;7($Y;1h|dCo?qHQh#jk|gjh|eELcTK_Qw)p0tzE3t{A)yM&i(j`8C*#_i8cC zUe{GPZ|Y9GV7tw+c1u`mB$FB%GfqzqI8hRSW5W@${|Vd__hiho3ozU8#6;gLthXJtB{wu(S zOc-RofLi}(eW6j%Z2GiRQtzve%eR>&|@Y-XlWt-z(`EOUATjIAG zHKzC!rWwrHV{7Gcq)eE&roFIFz1%fUgMVdP3D$Bz-sfDvRm(>+ zZybw#wo{>8Vq3t2`fT^Wx9c2A-n{GWd6cD3vZ)W)*vBx+w5Z6?$$wZNt^4+&*XLDb zm%CNBt@XM%@x~hAI*YjIV(rg5eT-Y-jfUStb+4AMI&O9#nH}I%?t8WW`PQI-j$*X4 zlU3OJJ5@I`2r*wP)~P;z$$wT^KIO#4$;yh{)kSwdln@Kz`Vf41v#Y?XGjEpYT6nuC)!4NZE2-(@u`ri@?NmtCOo6x??4VwovWvq-JyJ+ z^ImYx@O7d9K`fc3#yEue@H@Bqq1Z zkz}KF((w8Z75zJ&lzn;Ps=Sv|_}xbxmvU0lVBy1c_GbLE`D@l)%4sh)s8R?m=_{|w zidZ@>((-8Hd`Nfw-nZ(DKB_M@KD?qSa;GcaYU8~}akg#H5|(T8wH24@H3t-hIj6VU z?nB!}e&-jjf2h1uxt8i9bL*@voFOF*@Vj>yzttlU*E-nF`aAF&rotp}$`I^R!-$m$ zj7%g54jzKw-)H{*GxXk47PY_g?urW=R;LP@9dC&42_gG@e zm&n{)IA-~~+3==;CAT)zbQ^3~^7)49JDEd_Xun$L+$}SpnXbI?X6C$|8y>evrOzzy zU$$estD0=amSwMJC4EC})b)|cgp^^I*N5&Kxg0%b>Az*4UXne2L1S^})TQ}lOmv;D z!v3$HiVvW!8M^y_@0UD#1}i^|-n#*M@AxzH{-t5~6M8F;fG|LBfaegLUWj0;5hgts zPR~hG`xX3_u`8H=xp|SHoV-`PY-Z`Uy&myF@1<37-2WKV|AjN+kESe;wep7Sv!N1B zl#b`Mdl%fjmh9_^+K&^(g+z~2-F@xEqBZrnn=0k2qFMEU=qp}WRiC1cg?0}EkM0ZF zsMDp3%Gz@@>FsaVUrj~zJUp>RPV!>TjE8-U2_4?M^BzCTiEK?f{j}h%lvSq0^R*Vn zhOu8hetn!&gj4t={V?{Jrq`y`^W}u=>dWXQ;g$`)iZ589)71-q!%lxFtxf1}#LrB` z+fEkBUwjd3`#n=mweyS|b9G-^y~azg-%=aMljm+d`SRFed51+e8A5{|`0~*tZfFQf zLrzWc#vQf74>pH+K{b|E&-yd78hr!0H^ml2?V)?z{Fr=lm*zs2d2e~KIZ0}PHtUkD zUbKEjpZtX>N1GgLp7g(3T=%GAr-)qd)evW-Vwxy#spoxZV~^W|PbjWnrTpTH{EJUxUhLR#4R8Kku^}Y1-E(4D`+(Kv>9|?y^Dn7x z9mHptoP#q=P64+poWA^Tw3mN!)Q-A`OVcY5EA59HSylo+Zj5sn16;AA&SQDJB0M&A z0%8LW7sTL!4R}3f;KHn=M)l73IfZJt*osr?C{;8`9$;_Wh}Gtpkdz@~oY;_}xkm7^XkaS3Xs z@4de8mMecR`<1pzP&^@S+N1bZ{?r0>;~c9;qDgN)o6;r(zMg(Wdquay>p1}rwU0)i zOIyR-+T!st6-PVNGLt?VKQx&|T$(toQT8UuO;1Mi;fhn|`jo;essnu-jaPm+=OVMb zuE$WNjOtuOdN_w_nOsMjovpad?gqEfV&GZyf`%_v6QL;k^p_>$mZD86>aqvZR%x8& z8$WP3t=hGE`w}=P%BzO@>blg8vJ9h0I0HRq@TBk=XgLriC04e~zwPA?RBhDXCjDb4 zqI3?dIjSxac=?flGzzHMh$2bil@M1La-t8MgQDZf!GBP*q}vmEp7xOpH?;3vYeJZ+ zIgn}CK2|}16BJPpkMtMTD$W#3xtvdDX7?IquCl6h3-w)ppmmw;H#|z+4iYxyWE(`~8RtnK(LPZSh%27I z?D&QKPuDhSJ>;4{V?7A}=FmumzOJQfO_jU!A{fJX-+Z}Hds!0igC%Z@g*0j3lU}d= z43n}bVrJSxvz3^)ZP{tX0oK)EU}p^KXx$X0VhlT5?AOX*c6ySz@@1_>Iy-QQjgt8 zLJp|HV|SClfkD!k-6U`_lN9_PvYXUY0prts)w7<=Y9!4&xZc@3Y;vzm#f@7UliyvF ztbQVNtY~~)96D9+@%ZN!vjiFT0(# z(05%skblpA(EWj_lXqa>=UyZ2nUNAt)!sjEucTBhP}_T~@59qOq`tS8y%(XY!)|_4 zN~q7LFHV(O!`$Tec(cm+16dc}Es?Umm2|Pd_JZq*lVdGX zeT_L`()#tO%Qsv<%Hp8yelt8VdG6t@s0G4jEnX>T)mckUostUOUb)1shteV9>1-@>OWilKUd`VB!}0Xdo(Bud2BA&^C=+W zg;RS|Ly&jnw#1ZZ=OZojyxI!A{(f%8V~rbY2AxV|y1Dt+rp#J)aO zyT`bB%%32Azxl?Qm3nanSL;&UYxl{tH?FufU!%Y}|C;IaS5Lo@3Ikhp=eT`5V1aAR zJUV;&=iJ)KOGTF_*GzSJ)aT-MT7&0*N$0rkxmm10;pgzfCRoz_Ior3bo4b2b+SS$r zo1aM3v0DzPT|9j;+f;6Ls`RVxim%gD$Q~-&Pxys=*na21Z}Kx1+{$!qRX%*adsokI zk(QF7^Ul{=gp?TRggHObR?`zuuV@j|B3F8DjpVVD@>}7ib^60t^$1{9C;Z11{OGp# zFLCHk{H{N_2L9j`9=ku@`Z3_jn(p#YRz$OHL2gLfwT+tR{(lh;=q+%Zg8hZCArzum z5{UmUg!>0|i{SK42*hDA>FeP1JUD&Lh(81;0jH~i!N!Br<^8KwH!s=xx5}oO)(by-$nbSJ_Q_GB$iBeYcphVV%m8$0wUk=3jh7s=S+C ze@_oOaf2+__arrW-GV3Rn{QsWU-i;IEXr;F7gab9#4!u0iXfezcKggZ-70x*iwRd-s>5 zel>J=%Z{1wXnSg6NHZgOZRV!d8+UEv$?t5c{15oKMxNTGy6(p6@pp>C=Mq+Zp=LJU zOUNu)em*!b^UTQ(g*B^+Enn95G?}&3&E*eNsAEt&jKkxbJiQOzmkijj@Y8cY&-V)? zy))0Z%fDIu+CjEiA@Pw>K$4*;<;3Ovt73NPKF+-3N@T66xU`lS7N=*ouaJAmu-n1F zBwNRF-fiki`;`{zN^MM=f{1y3y|-M8O4ICmCZsQzR`P(MsqLdnTUV^dBdVIwHIkN7 zu6dmeJMh8Qm2vRFle_XvTZ^{5Dc7jM)9f7Z75d6DX97x28qe`XZ;DL5q0w^Zbir!r zMJ91hyQLzZ-aOxFv~hhx13qIy4xBMzrFbQ`>hFeYWI;F9HXmc@m!_Wu$GYT(-2hq` zJn%50{`)QktC7`-ECz3g!P>m@v0dyW-MRc*bCPd&)8u`p{66yFgqN4^GG~9=^1b>m zb1!(ly0viUZ!7P<(keYv($*R46(4jpGikMvukX33kKUZE?}`>Z>Azrg==iCmjLVki z>oT&wZvC_}Mzv%P51!+2!P|jdEa`7`7uhPv}ju*)&Npo)V1^4T! zla5F;Tvo-tXPu1f!q+uV?iI>bt@gOJkXn?Bzl&?fZg`t_O~=go!bi2KHEX_Qtu5;M zcrPd1bfT;;?l#S+@A;d%+rkV^-Fd^(e;sC;nb*3z-~7LDT~@3M}cz93KSlElVl+ zVYN^O3&;$V4p^0If&?|7AwQ~JHd{^t^}BP2j`u#~E7w@hqd&z|nbaCDeLNnbqousF z(!cAMXsUwu#;9|Ejw4fngFqTon1)8ZFHJvOk$&)RKRQFiJCZGlu!FrN)e(Fq_OBhC zDa}v>jzXz8U}?@Cwlrna!QYJl7y5Uvi2sR}COEwWKB+@aT8b@A5F{Z%IOQ*~iA`bS zA)8ot)F%G_!hK3u z!`UayGl_?$@g|4#O<wb$uhlT}@v!h~nWkA6(O~o;03E2%6{eHpn%LuuM-sjF)>BHJTXK;bOZC_x*p5xgLo_4;?N+nX$!c#x+ zPD!kHTGD&neK6+9#>@M6zFlY`hwr=NCAIe83K?>Dl1}yWqN_H~telSQcz=&`yaII^ zE1REm_3N=ymz?IzRWCtFdK-EU+nGt`Q z{c||;ba#wwi zWTkdA%#>ei`jGxgYi1mK(;|cDvn5;0Z3a>ouaC@4+8%wQtE6A|E3LiY{rPQj>$573 zZ`Q8DI4rHNODi^{Ve3qua9(|Se{u%EJY_H|8-lkJ=%Dm0W~-l_J{6C8ij1$92dOIPGuf8x3(b${MDWA~@~!X?c4 zf(4c7S9Zwmp&xy9{z`jBt?;Vu`}$0jUfP$5D=qx#2SV;#RG3w?aC!VxnWu%8FLE9b zaVq8?PFeYz8GO39$Lr3d`u&x6*B{v7P=2XN%ii-rR=>r@t>bxc%TW=*y_3D@Ls7QX z#0v)dX4h5SbF$gs6W3ODqhZz~{{6ty&G+F`gN;u;zbKrXVcwzru zBu7s4BWp%Fc+Y@O?uUG^BqRtvS4VuXfAe|S|JF+%pzfc40npA9c=T@nX5nkD*dd{m zxMoFX-AZqo)m^R2YIXbtPo~z%MKPzjeW=YiZ84+cLan-jEdAYHnsj95+g*|1mMicoV}lv?Z^yMC*Yn#Kg1<&#h8Ht|+?xvU5^?RV8lPcaTuIHK9G zdwSjR_lsL!^=mKuAV-g;N=Z0n+|*Kg_Pn-OG~BAYsYV~&2v8FoPa zsY&t~2GFwV`FA&|bSpwpPe16`IF=HY@!oE|v9zpCBa)!9v7u|k4>IJl9rb!RHwfL1 zB?m-Q-?)4Aw?|dNg{-fuesa(L@^$t9dAJ`K7~r5Ra=3rQg^K@oIWPV}-M@Fw{xQp$53+CcMeP07Q|WVGW+R!ab!Vd@ZcCh$U<2z!*uhGN7IWLyg@d{7+kSiF z$!VC86n8bY{46xRCp{)i3w1`xzj0VKh5*hV~3AsHb+&* zIU8t~rk{b+PgbNKgVPWHB^LKT{cym`pCSHmzyT&uEgdN?G)ue_jfS5Ln-5v)hCf^C zScdrTKVdzY;4gLwv5w$xA=;s{s- zTaPX&!CvPS*aDXOQ33F$AxlIEjh6KP@u1N*l*-$4A4#Q*DT~H~jlq$F4&nuBsT?eW zl$TI{G_P#M%P&tZzpy7og`avxMPBu{>P)=)4TwW7C|`ZUD*!UXA%?P_ymJldmPZhyjE zHK$9*8vnA6bMVZ@f}-kMGvs#qMSl7`uIX-1*SHN9zj^qR_1!VP%p8n{#PieRDye6B zrGrzCO=+&&yEf>Adx4YOeZ2wwCpFKf9jMBj99g#W)S|sHMsLG&*C#j~$~(hTdsc9* z_S3;gg`a;l>*hcny@8jF<@vA=S^VYP?F2}oO#-~JAobUCpQ`sZx zqA8H4Y|u8hj{9Cku$foK~q3TM|Ijgjt2NVoiPkA}KE&A-E{e1GQ;sZ*PsR?^$*-F+; zyjeNDF0Wekmj8va+k`v~m#xovIq^{(!nwLR8lEyKDg)dUBlS89Rf+c#dO~28rh|gM z?03Zr! + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/CH08_GUI/bin/Debug/CH08_GUI.vshost.exe.manifest b/9781430248606_sourcecode/CH08_GUI/bin/Debug/CH08_GUI.vshost.exe.manifest new file mode 100644 index 0000000..061c9ca --- /dev/null +++ b/9781430248606_sourcecode/CH08_GUI/bin/Debug/CH08_GUI.vshost.exe.manifest @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/9781430248606_sourcecode/CH08_GUI/frmMain.Designer.cs b/9781430248606_sourcecode/CH08_GUI/frmMain.Designer.cs new file mode 100644 index 0000000..4f4230d --- /dev/null +++ b/9781430248606_sourcecode/CH08_GUI/frmMain.Designer.cs @@ -0,0 +1,18 @@ +namespace CH08_GUI +{ + partial class frmMain + { + /* code removed */ + private void InitializeComponent() + { + this.btnGenerate = new System.Windows.Forms.Button(); + /* code removed */ + this.btnGenerate.Click += new System.EventHandler(this.btnGenerate_Click); + /* code removed */ + } + + private System.Windows.Forms.Button btnGenerate; + private System.Windows.Forms.Label lblGuid; + } +} + diff --git a/9781430248606_sourcecode/CH08_GUI/frmMain.cs b/9781430248606_sourcecode/CH08_GUI/frmMain.cs new file mode 100644 index 0000000..3d9f165 --- /dev/null +++ b/9781430248606_sourcecode/CH08_GUI/frmMain.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace CH08_GUI +{ + public partial class frmMain : Form + { + public frmMain() + { + InitializeComponent(); + } + + private void btnGenerate_Click(object sender, EventArgs e) + { + lblGuid.Text = Guid.NewGuid().ToString("N"); + } + } +} diff --git a/9781430248606_sourcecode/CH08_GUI/frmMain.resx b/9781430248606_sourcecode/CH08_GUI/frmMain.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/9781430248606_sourcecode/CH08_GUI/frmMain.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/9781430248606_sourcecode/CH08_GUI/obj/Debug/CH08_GUI.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/CH08_GUI/obj/Debug/CH08_GUI.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..e255c83 --- /dev/null +++ b/9781430248606_sourcecode/CH08_GUI/obj/Debug/CH08_GUI.csproj.FileListAbsolute.txt @@ -0,0 +1,9 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\CH08_GUI\bin\Debug\CH08_GUI.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\CH08_GUI\bin\Debug\CH08_GUI.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\CH08_GUI\bin\Debug\CH08_GUI.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\CH08_GUI\obj\Debug\CH08_GUI.csprojResolveAssemblyReference.cache +J:\Book\ExpertC#2012\SourceCode\BookExamples\CH08_GUI\obj\Debug\CH08_GUI.frmMain.resources +J:\Book\ExpertC#2012\SourceCode\BookExamples\CH08_GUI\obj\Debug\CH08_GUI.Properties.Resources.resources +J:\Book\ExpertC#2012\SourceCode\BookExamples\CH08_GUI\obj\Debug\CH08_GUI.csproj.GenerateResource.Cache +J:\Book\ExpertC#2012\SourceCode\BookExamples\CH08_GUI\obj\Debug\CH08_GUI.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\CH08_GUI\obj\Debug\CH08_GUI.pdb diff --git a/9781430248606_sourcecode/CH08_GUI/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/9781430248606_sourcecode/CH08_GUI/obj/Debug/DesignTimeResolveAssemblyReferences.cache new file mode 100644 index 0000000000000000000000000000000000000000..a07a90eecb448de6a10533606cea86f9eb222352 GIT binary patch literal 834 zcmb_aO>fgc5Z!#(jU9vX12`CoTO%t`h=58FDlSngXjMqmlR?^e$7PkZx7uA7rT-0y z3s;W(3Xa@iCJm((5hvEt^Um&Q=DoMW8jP`@xadzSY9hQlmbuYZ7cO~GOC^#yw@aH` zK28Sx_zaAdx|(1>Uq4Q3c^+`LdpCUtmb+N)nqXk731PbF&v8VfRDIG zy&i6FFB^3+pSsHCB^GGpc0Yd)*Wjh3kf3P*Wy1!AVi?ktC!@h=_^d$;iQw&=?%ka3FISEJm;e9( literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/CH08_GUI/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/CH08_GUI/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..a8d12f817a2252545ebb6b6dde7a042e341de5ae GIT binary patch literal 7051 zcmeHMds7=X5Vv_K7($C_N)l)ir%4}^x>uVw%+MLIaY6$b1`}w9qei}yjmq80m2`m1 z__OpAbovq7-NPKu(9Yy;hCh5BuZ14_lUA$KZw5FTPZGQGh0k5F1&?&-pJu6n<@B?_9a{Jn6D*uvYBTv5VYi^1I z<}Fln6Sb+@Of8?cr*d?H_9Eo$2auM0?%0U8;%O#DV_VWjgGpn9$`!BSYxNKYKcU}j-zfv*KkfH__!c`4R zR_98~=J|jWEKD;r;V3A&Xp9ReBUhT%gvSq{`~6d-ZI_RhEzrub!Wr$^U(DW@hM= zH8q`|o0w#|*}2{9ZS%OJQ;ow8yV08Uj;l*1J1!cB7lo%O4&`^;ry@Q;9S4oWhdK@# z)y27s-Q_BsQzXaS=FzDR6r^>f%t4NC7i>M?GW zOl#m>$^dd66v!xGtbRPkVxwVLL1aP3KqD>8n*dvfC?XRC6=rDkOndKfI_EwT+Vrxw zm}uDZZbqTJPh}&p*B1cuOQbMoTr^Ps1k{_6st-xBWC6lcK=9%~C{j%g6tLUpv0s4s zEUr}rnCQkCK&ZyDD%NmB(`B9xR`MKhw&TFTMSKa$D{&|e~IJ)6==m0&vbgIS$8{66Z9AflF?!7={lwg&iTe%#@37mD#=( zvol7nMGVjpMbPpC=oviOphrk@F-_YdIjD+&P*=Ivj$_goo?wJV@*tw!b21Jp-$&|3 mC2CO{xP2Of9(?WvzJrd1PxoJ)SKxpBN2v1(40HOs1OEb6@hh1C literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/CH08_GUI/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/9781430248606_sourcecode/CH08_GUI/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/CH08_GUI/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/9781430248606_sourcecode/CH08_GUI/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch01/Ch01.csproj b/9781430248606_sourcecode/Ch01/Ch01.csproj new file mode 100644 index 0000000..53c315e --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Ch01.csproj @@ -0,0 +1,120 @@ + + + + Debug + x86 + 8.0.30703 + 2.0 + {49F8E9D5-92B3-4E2F-A488-0FC4E76D3038} + Exe + Properties + Ch01 + Ch01 + v4.5 + + + 512 + + + x86 + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + false + + + x86 + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch01/Listing 1-1.cs b/9781430248606_sourcecode/Ch01/Listing 1-1.cs new file mode 100644 index 0000000..3b3f8fd --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-1.cs @@ -0,0 +1,31 @@ +//using System; /* importing namespace */ + +//namespace Ch01 /* namespace declaration */ +//{ +// class Program /* class declaration*/ +// { +// static void Main(string[] args) /* method declaration */ +// { +// PowerGenerator pg = new PowerGenerator(); +// pg.ProcessPower(); +// } /* end of method declaration */ +// } /* end of class declaration */ + +// public class PowerGenerator +// { +// const int limit = 3; /* constant declaration */ +// const string +// original = "Original number", +// square = "Square number"; + +// public void ProcessPower() +// { +// Console.WriteLine("{0,16}{1,20}", +// original, square); /* statement*/ +// for (int i = 0; i <= limit; ++i) /* iteration statement*/ +// { +// Console.Write("{0,10}{1,20}\n", i, Math.Pow(i, 2)); +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-10.cs b/9781430248606_sourcecode/Ch01/Listing 1-10.cs new file mode 100644 index 0000000..15c4590 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-10.cs @@ -0,0 +1,19 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Book book = default(Book); /* null */ +// int i = default(int); /* 0 */ +// float f = default(float); /* 0.0 */ +// char c = default(char); /* '\0' */ +// bool b = default(bool); /* false */ +// Planets p = default(Planets); /* Earth */ +// } +// } + +// class Book { } /* a reference type Book declaration */ +// enum Planets { Earth = 0 } /* enum declaration */ +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-11.cs b/9781430248606_sourcecode/Ch01/Listing 1-11.cs new file mode 100644 index 0000000..097334c --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-11.cs @@ -0,0 +1,21 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Converter converter = new Converter(); +// converter.ConvertAndIncrease(10); +// } +// } + +// public class Converter +// { +// public int ConvertAndIncrease(int baseValue) +// { +// int increaseFactor = 10; +// return baseValue + increaseFactor; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-12.cs b/9781430248606_sourcecode/Ch01/Listing 1-12.cs new file mode 100644 index 0000000..5890130 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-12.cs @@ -0,0 +1,21 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// public static int X = 100; /* Static variable */ + +// static void Main(string[] args) +// { +// Console.Write("{0}\t", X); /* 100 */ +// Program.X = 200; /* This change affect globally */ +// Console.Write("{0}\t", X); /* 200 */ +// Show(); +// } + +// static void Show() +// { +// Console.Write("{0}\t", Program.X); /* 200 */ +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-13.cs b/9781430248606_sourcecode/Ch01/Listing 1-13.cs new file mode 100644 index 0000000..a646a11 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-13.cs @@ -0,0 +1,24 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// AClass anObject = new AClass(); +// Console.ReadLine(); +// } +// } +// public class AClass +// { +// public int X; +// public AClass() +// { +// Console.WriteLine("Initial value of the X :{0}", X); +// X = 100; +// Console.WriteLine("Updated value of the X :{0}", X); +// MethodA(); +// } +// public void MethodA() { } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-14.cs b/9781430248606_sourcecode/Ch01/Listing 1-14.cs new file mode 100644 index 0000000..f2a5eaf --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-14.cs @@ -0,0 +1,17 @@ +//using System; + +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// int x; +// WithOutInParameter(out x); +// Console.WriteLine(x); /* 100 */ +// } + +// static void WithOutInParameter(out int a) +// { a = 100; } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-15.cs b/9781430248606_sourcecode/Ch01/Listing 1-15.cs new file mode 100644 index 0000000..60d92eb --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-15.cs @@ -0,0 +1,38 @@ +//using System; +//using System.IO; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// AClass aClass = new AClass(); +// aClass.MethodA(); +// Console.ReadLine(); +// } +// } + +// public class AClass +// { +// public void MethodA() +// { +// int a = 10; +// switch (a) +// { +// case 7: +// Console.WriteLine("..."); +// break; +// case 10: +// int b = 10; +// Console.WriteLine(b); +// break; +// default: Console.WriteLine("Default"); break; +// } +// for (int i = 0; i < 5; ++i) ; +// using (MemoryStream ms = new MemoryStream()) +// { +// ; /*Doing nothing*/ +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-18.cs b/9781430248606_sourcecode/Ch01/Listing 1-18.cs new file mode 100644 index 0000000..14e5457 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-18.cs @@ -0,0 +1,24 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// /* Initializes with 100 */ +// int x = 100; +// Console.WriteLine("Before method call :\t{0}", x); + +// /* pass ass value to the Increment method*/ +// Increment(x); +// Console.WriteLine("After method call :\t{0}", x); +// } + +// /* a is the parameter for the MethodA*/ +// static void Increment(int a) +// { +// ++a; +// Console.WriteLine("Incremented value :\t{0}", a); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-19.cs b/9781430248606_sourcecode/Ch01/Listing 1-19.cs new file mode 100644 index 0000000..264ddda --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-19.cs @@ -0,0 +1,18 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// int x = 100; /* Needs to initialize x */ +// Console.WriteLine(x); /* 100 */ +// Increment(ref x); /* pass the location (0x052de8b4) of the x */ +// Console.WriteLine(x); /* 101 */ +// } +// static void Increment(ref int a) /* a pointing to the same memory +// * location as x (0x052de8b4) +// * of Main method */ +// { ++a; } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-2.cs b/9781430248606_sourcecode/Ch01/Listing 1-2.cs new file mode 100644 index 0000000..280b109 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-2.cs @@ -0,0 +1,20 @@ +//using System; + +///* Ch01 is the identifier to name the namespace*/ +//namespace Ch01 +//{ +// /* Program is the identifier to name the class */ +// class Program +// { +// /* Main is the identifier to name the method */ +// static void Main(string[] args) +// { +// /* a and _a is the identifier to name the variable */ +// int a = 10, _a = 20; +// /* Verbatim identifier - start with an @ prefix */ +// int @int = 10; + +// Console.WriteLine("{0}\t{1}\t{2}", a, _a, @int); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-20.cs b/9781430248606_sourcecode/Ch01/Listing 1-20.cs new file mode 100644 index 0000000..264ddda --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-20.cs @@ -0,0 +1,18 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// int x = 100; /* Needs to initialize x */ +// Console.WriteLine(x); /* 100 */ +// Increment(ref x); /* pass the location (0x052de8b4) of the x */ +// Console.WriteLine(x); /* 101 */ +// } +// static void Increment(ref int a) /* a pointing to the same memory +// * location as x (0x052de8b4) +// * of Main method */ +// { ++a; } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-21.cs b/9781430248606_sourcecode/Ch01/Listing 1-21.cs new file mode 100644 index 0000000..1059006 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-21.cs @@ -0,0 +1,20 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// string[] planets = { "Jupiter", "\n", "Pallas" }; +// Console.WriteLine("{0}", ConcatStrings(planets)); +// } + +// static string ConcatStrings(params string[] items) +// { +// string result = default(string); +// foreach (string item in items) +// { result = string.Concat(result, item); } +// return result; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-22.cs b/9781430248606_sourcecode/Ch01/Listing 1-22.cs new file mode 100644 index 0000000..5ec079c --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-22.cs @@ -0,0 +1,17 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Show(); /* Please specify message */ +// Show("Message set"); /* Message set */ +// } + +// static void Show(string message = "Please specify message") +// { +// Console.WriteLine(message); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-23.cs b/9781430248606_sourcecode/Ch01/Listing 1-23.cs new file mode 100644 index 0000000..1693dcc --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-23.cs @@ -0,0 +1,18 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Add(a: 10, b: 10); /* 20 */ +// Add(10, b: 10); /* 20 */ +// //Add(a: 10, 10); /* Compile time error, position */ +// } + +// static void Add(int a, int b) +// { +// Console.WriteLine(a + b); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-24.cs b/9781430248606_sourcecode/Ch01/Listing 1-24.cs new file mode 100644 index 0000000..3b3f8fd --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-24.cs @@ -0,0 +1,31 @@ +//using System; /* importing namespace */ + +//namespace Ch01 /* namespace declaration */ +//{ +// class Program /* class declaration*/ +// { +// static void Main(string[] args) /* method declaration */ +// { +// PowerGenerator pg = new PowerGenerator(); +// pg.ProcessPower(); +// } /* end of method declaration */ +// } /* end of class declaration */ + +// public class PowerGenerator +// { +// const int limit = 3; /* constant declaration */ +// const string +// original = "Original number", +// square = "Square number"; + +// public void ProcessPower() +// { +// Console.WriteLine("{0,16}{1,20}", +// original, square); /* statement*/ +// for (int i = 0; i <= limit; ++i) /* iteration statement*/ +// { +// Console.Write("{0,10}{1,20}\n", i, Math.Pow(i, 2)); +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-25.cs b/9781430248606_sourcecode/Ch01/Listing 1-25.cs new file mode 100644 index 0000000..2136e8c --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-25.cs @@ -0,0 +1,26 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// int x, y; /* Declaration statement */ +// x = 10; /* Assignment expression */ +// y = 12; /* Assignment expression */ +// ++x; /* Increment expression */ +// --y; /* Decrement expression */ +// Show(x, y); /* Method call expression which will +// * show 22 as output*/ +// string message = +// new string('.', 10); /* object instantiation expression */ +// Console.WriteLine(message); /* Method call expression which will +// * show method */ +// } + +// static void Show(int a, int b) +// { +// Console.WriteLine(a + b); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-26.cs b/9781430248606_sourcecode/Ch01/Listing 1-26.cs new file mode 100644 index 0000000..ed6a04f --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-26.cs @@ -0,0 +1,15 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// int a = 0; +// lock (a) +// { +// Console.WriteLine(a); +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-27.cs b/9781430248606_sourcecode/Ch01/Listing 1-27.cs new file mode 100644 index 0000000..36556b1 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-27.cs @@ -0,0 +1,17 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { + +// static void Main(string[] args) +// { +// AClass anObject = new AClass(); +// lock (anObject) +// { +// Console.WriteLine(anObject.ToString()); +// } +// } +// class AClass { } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-29.cs b/9781430248606_sourcecode/Ch01/Listing 1-29.cs new file mode 100644 index 0000000..6a810fb --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-29.cs @@ -0,0 +1,28 @@ +//using System; +//using System.IO; +//using System.Text; + +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// MethodB(); +// } + +// public static void MethodB() +// { +// using (MemoryStream ms = +// new MemoryStream(Encoding.ASCII.GetBytes("Expert C# 5.0"))) +// { +// int i = 0; +// do +// { +// int current = ms.ReadByte(); +// Console.Write("{0}\t{1}\n", current, (char)current); +// } while (++i < ms.Length); +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-3.cs b/9781430248606_sourcecode/Ch01/Listing 1-3.cs new file mode 100644 index 0000000..31bc156 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-3.cs @@ -0,0 +1,21 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// int a = 100, @int = 100; /* int is keyword and @int used +// * as identifier */ +// try +// { /* try is keyword */ +// Console.Write(a / @int); +// } +// catch +// { +// throw; +// } /* catch and throw is keyword */ +// } + +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-30.cs b/9781430248606_sourcecode/Ch01/Listing 1-30.cs new file mode 100644 index 0000000..e1e966b --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-30.cs @@ -0,0 +1,26 @@ +//using System; +//using System.Collections; + +//namespace Ch01 +//{ +// class Program +// { +// static void Main() +// { +// foreach (int i in GeneratePower(2, 4)) +// { +// Console.Write("{0} ", i); +// } +// } + +// public static IEnumerable GeneratePower(int initialValue, int range) +// { +// int result = 1; +// for (int counter = 0; counter < range; ++counter) +// { +// result = result * initialValue; +// yield return result; +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-31.cs b/9781430248606_sourcecode/Ch01/Listing 1-31.cs new file mode 100644 index 0000000..903b6d5 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-31.cs @@ -0,0 +1,5 @@ +//namespace Ch01 +//{ +// class A { } +// class B { } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-32.cs b/9781430248606_sourcecode/Ch01/Listing 1-32.cs new file mode 100644 index 0000000..31d6e20 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-32.cs @@ -0,0 +1,4 @@ +//namespace Ch01Level3.Ch01Level2.Ch01Level1 +//{ +// class ClassA { } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-33.cs b/9781430248606_sourcecode/Ch01/Listing 1-33.cs new file mode 100644 index 0000000..0cf6db6 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-33.cs @@ -0,0 +1,10 @@ +//namespace Ch01Level3 +//{ +// namespace Ch01Level2 +// { +// namespace Ch01Level1 +// { +// class ClassA { } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-35.cs b/9781430248606_sourcecode/Ch01/Listing 1-35.cs new file mode 100644 index 0000000..b28d031 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-35.cs @@ -0,0 +1,8 @@ +//namespace Ch01 +//{ +// class ClassA { } +//} + +//namespace Ch01 +//{ +// class ClassB { } diff --git a/9781430248606_sourcecode/Ch01/Listing 1-37.cs b/9781430248606_sourcecode/Ch01/Listing 1-37.cs new file mode 100644 index 0000000..87d55f1 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-37.cs @@ -0,0 +1,12 @@ +//namespace Ch01.Using +//{ +// using Ch01; /* using statement imports the namespace +// * defined in the Listing 1-36 */ +// using One = Ch01; /* using alias directives One refers to +// * the Ch01 */ +// class ClassC +// { +// private ClassB classB; +// private One.ClassA classA; +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-38.cs b/9781430248606_sourcecode/Ch01/Listing 1-38.cs new file mode 100644 index 0000000..98ee39a --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-38.cs @@ -0,0 +1,29 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Person person = new Person() +// { +// Name = "Person A", +// Address = "Address of Person A" +// }; +// Console.WriteLine(person.ToString()); +// } +// } + +// public class Person +// { +// public override string ToString() +// { +// return string.Format("Name: {0}\nAddress:{1}", Name, Address); +// } + +// public string Name { get; set; } +// public string Address { get; set; } +// } +// public class Address { }; /* ; is optional and it used in here +// * to show the usage of it.*/ +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-39.cs b/9781430248606_sourcecode/Ch01/Listing 1-39.cs new file mode 100644 index 0000000..db28635 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-39.cs @@ -0,0 +1,13 @@ +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) {} +// protected internal void MethodA(){} /* Valid use of access modifiers +// * combination */ +// public internal void MethodA(){} /* Invalid use of access +// * modifiers combination */ +// private internal void MethodA(){} /* Invalid use of access +// * modifiers combination */ +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-4.cs b/9781430248606_sourcecode/Ch01/Listing 1-4.cs new file mode 100644 index 0000000..fe2beed --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-4.cs @@ -0,0 +1,17 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Book aBook = null; /* Reference type can be set with +// * null literal */ +// int chapters = null; /* Compiler error for value type +// * when set with null literal*/ +// Nullable pages = null; /* null can be set in value type +// * when it is a type of Nullable */ +// } +// } +// class Book { } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-40.cs b/9781430248606_sourcecode/Ch01/Listing 1-40.cs new file mode 100644 index 0000000..c7109ef --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-40.cs @@ -0,0 +1,24 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// StandardCalculator sc = new StandardCalculator(); +// Console.WriteLine(sc.Add(10, 10)); /* 20 */ +// Console.WriteLine(sc.Sub(10, 10)); /* 0 */ +// } +// } + +// public abstract class Calculator +// { +// public abstract int Add(int a, int b); +// public int Sub(int a, int b) { return b - a; } +// } + +// public class StandardCalculator : Calculator +// { +// public override int Add(int a, int b) { return a + b; } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-41.cs b/9781430248606_sourcecode/Ch01/Listing 1-41.cs new file mode 100644 index 0000000..f0c4b2f --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-41.cs @@ -0,0 +1,19 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Person person = new Person +// { +// Age = 30 +// }; +// } +// } + +// public sealed class Person +// { +// public int Age { get; set; } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-42.cs b/9781430248606_sourcecode/Ch01/Listing 1-42.cs new file mode 100644 index 0000000..88d9f40 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-42.cs @@ -0,0 +1,17 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Console.WriteLine("{0}", Calculator.Add(10, 10)); +// } +// } + +// public static class Calculator /* A static class declaration */ +// { +// /* A static method declaration */ +// public static int Add(int a, int b) { return a + b; } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-43.cs b/9781430248606_sourcecode/Ch01/Listing 1-43.cs new file mode 100644 index 0000000..98c3981 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-43.cs @@ -0,0 +1,18 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Person person = new Person(); +// } +// } + +// public class Person +// { +// /* Empty class, there hasn't been declared any explicit constructor, +// * property or method. After compiling C# compiler will add a +// * default constructor*/ +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-44.cs b/9781430248606_sourcecode/Ch01/Listing 1-44.cs new file mode 100644 index 0000000..cfb8715 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-44.cs @@ -0,0 +1,23 @@ +//using System; + +//namespace Ch01 +//{ +// class Program +// { +// public static int Y = StaticClass.X + 1; /* StaticClass.X= 1 */ +// static Program() { } +// static void Main() +// { +// Console.WriteLine("X = {0}, Y = {1}", StaticClass.X, Program.Y); +// } +// } + +// class StaticClass +// { +// public static int X; /*0*/ +// static StaticClass() +// { +// X = Program.Y + 1; /* Program.Y = 0 */ +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-45.cs b/9781430248606_sourcecode/Ch01/Listing 1-45.cs new file mode 100644 index 0000000..a4ecee3 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-45.cs @@ -0,0 +1,23 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// /* A static method */ +// static void Main(string[] args) +// { +// AClass anInstanceOfAClass = new AClass(); +// anInstanceOfAClass.Display(); +// } +// } + +// public class AClass +// { +// /* An instance method */ +// public void Display() +// { +// Console.WriteLine("Hello world! from the Main method"); +// /* Hello world! from the Main method */ +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-46.cs b/9781430248606_sourcecode/Ch01/Listing 1-46.cs new file mode 100644 index 0000000..7c76654 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-46.cs @@ -0,0 +1,27 @@ +//using System; + +//namespace Ch01 +//{ +// class Program +// { +// static void Main() +// { +// AClass.Method1(); /* Call Method1 but Method2 is not +// * accessible outside of the AClass*/ +// Console.ReadLine(); + +// } +// } +// public static class AClass +// { +// public static void Method1() +// { +// Console.WriteLine("Method 1"); +// Method2(); +// } +// private static void Method2() +// { +// Console.WriteLine("Method 2"); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-47.cs b/9781430248606_sourcecode/Ch01/Listing 1-47.cs new file mode 100644 index 0000000..4132af2 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-47.cs @@ -0,0 +1,31 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main() +// { +// AClass anObjectOfAClass = new AClass(); +// anObjectOfAClass.Method1(); +// Console.ReadLine(); +// } +// } +// public class AClass +// { +// public void Method1() +// { +// Console.WriteLine("Method 1"); +// this.Method2(); /* this keyword used to invoke methodd2 */ +// } +// private void Method2() +// { +// Console.WriteLine("Method 2"); +// Method3(); /* this keyword can not be used to +// * static methodd3 */ +// } +// public static void Method3() +// { +// Console.WriteLine("Method 2"); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-48.cs b/9781430248606_sourcecode/Ch01/Listing 1-48.cs new file mode 100644 index 0000000..1a78d66 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-48.cs @@ -0,0 +1,29 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main() +// { +// D anObjectOfDClass = new D(); +// anObjectOfDClass.Method1(); +// Console.ReadLine(); +// } +// } + +// public class B +// { +// public virtual void Method1() +// { +// Console.WriteLine(ToString()); +// } +// } + +// public class D : B +// { +// public override void Method1() /* virtual method overriden */ +// { +// Console.WriteLine(ToString()); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-49.cs b/9781430248606_sourcecode/Ch01/Listing 1-49.cs new file mode 100644 index 0000000..920bb55 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-49.cs @@ -0,0 +1,26 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main() +// { +// AClass anObjectOfAClass = new AClass(); +// anObjectOfAClass.Method1(); +// Console.ReadLine(); + +// } +// } +// public class AClass : BaseClass +// { +// public override void Method1() +// { +// Console.WriteLine(ToString()); +// } +// } + +// public abstract class BaseClass +// { +// public abstract void Method1(); +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-5.cs b/9781430248606_sourcecode/Ch01/Listing 1-5.cs new file mode 100644 index 0000000..1c7c356 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-5.cs @@ -0,0 +1,16 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// int a = 10; /* int type */ +// Book book = new Book(); /* struct type */ +// Planets planets = Planets.Earth; /* enum type */ +// } +// } + +// struct Book { } /* struct type declaration */ +// enum Planets { Earth = 0 } /* enum type declaration*/ +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-50.cs b/9781430248606_sourcecode/Ch01/Listing 1-50.cs new file mode 100644 index 0000000..e2d22db --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-50.cs @@ -0,0 +1,35 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main() +// { +// AClass anObjectOfAClass = new AClass(); +// anObjectOfAClass.Method1(); +// anObjectOfAClass.Method2(); + +// BClass anObjectOfBClass = new BClass(); +// anObjectOfBClass.Method1(); +// Console.ReadLine(); +// } +// } + +// public class BaseClass +// { +// public virtual void Method1() { Console.WriteLine(ToString()); } +// public virtual void Method2() { Console.WriteLine(ToString()); } +// } + +// public class AClass : BaseClass +// { +// public override void Method1() { Console.WriteLine(ToString()); } +// public sealed override void Method2() +// { Console.WriteLine(ToString()); } +// } + +// public class BClass : AClass +// { +// public override void Method1() { Console.WriteLine("Overriden"); } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-51.cs b/9781430248606_sourcecode/Ch01/Listing 1-51.cs new file mode 100644 index 0000000..620e914 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-51.cs @@ -0,0 +1,20 @@ +//using System; +//using System.Runtime.InteropServices; +//namespace Ch01 +//{ +// class Program +// { +// [DllImport("User32.dll")] +// static extern Boolean MessageBeep(UInt32 beepType); + +// static void Main() +// { +// MessageBeep((UInt32)BeepTypes.MB_ICONEXCLAMATION); +// } +// enum BeepTypes +// { +// MB_ICONASTERISK = 0x00000040, +// MB_ICONEXCLAMATION = 0x00000030 +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-52.cs b/9781430248606_sourcecode/Ch01/Listing 1-52.cs new file mode 100644 index 0000000..6a050a4 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-52.cs @@ -0,0 +1,36 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main() +// { +// AClass anObjectOfAClass = new AClass(); +// anObjectOfAClass.Method1(); +// anObjectOfAClass.Method2(); +// Console.ReadLine(); +// } +// } + +// public abstract class BaseClass { public abstract void Method1();} + +// public class BaseClass2 : BaseClass +// { +// public override void Method1() +// { +// Console.WriteLine( +// "Method1 of the BaseClass overridden in the BaseClass2"); +// } + +// public virtual void Method2() +// { Console.WriteLine("Method2 define as virtual in the BaseClass2"); } + +// } +// public class AClass : BaseClass2 +// { +// public override void Method1() +// { Console.WriteLine("Method1 of the AClass overridden"); } +// public override void Method2() +// { Console.WriteLine("Method2 of the AClass overridden"); } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-53.cs b/9781430248606_sourcecode/Ch01/Listing 1-53.cs new file mode 100644 index 0000000..cb066d7 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-53.cs @@ -0,0 +1,23 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main() +// { +// A anObject = new A(); +// } +// } + +// public partial class A +// { +// public A() { MethodOfA("Partial method"); } +// partial void MethodOfA(string s); +// } + +// /* This part can be in a separate file. */ +// public partial class A +// { +// partial void MethodOfA(String s) { Console.WriteLine("{0}", s); } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-54.cs b/9781430248606_sourcecode/Ch01/Listing 1-54.cs new file mode 100644 index 0000000..c6d2c30 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-54.cs @@ -0,0 +1,35 @@ +//using System; +//namespace Ch01 +//{ +// public delegate void EventHandler(string name); + +// class Program +// { +// static void Main(string[] args) +// { +// Planets planets = new Planets(); +// for (int i = 0; i <= 8; ++i) +// Console.Write("{0}\t", planets[i]); +// Console.ReadLine(); +// } +// } + +// public class Planets +// { +// private string[] nameOfThePlanets = +// { "Sun", "Mercury", "Venus", "Earth", "Mars", "Jupiter", +// "Saturn", "Uranus", "Neptune" }; + +// public string this[int index] +// { +// get +// { +// return nameOfThePlanets[index]; +// } +// set +// { +// nameOfThePlanets[index] = value; +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-55.cs b/9781430248606_sourcecode/Ch01/Listing 1-55.cs new file mode 100644 index 0000000..455d463 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-55.cs @@ -0,0 +1,22 @@ +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Book aBook = new Book +// { +// Name = "Expert C# 5.0: with the .NET 4.5 Framework" +// }; +// } +// } +// public class Book +// { +// public Book() +// { Name = default(string); } + +// public string Name + +// { get; set; } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-56.cs b/9781430248606_sourcecode/Ch01/Listing 1-56.cs new file mode 100644 index 0000000..9e74319 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-56.cs @@ -0,0 +1,20 @@ +//public struct Point +//{ +// public const int ZeroPoint = 0; /* Constant declaration */ +// public int X; /* Field declaration */ +// public int Y; /* Field declaration */ +// private int length; +// public Point(int x, int y) /* Non-parameterless constructor */ +// { +// X = x; Y = y; +// length = X + Y; +// } +// public string ToString() /* Method declaration */ +// { +// return "X" + X + "\n Y:" + Y; +// } +// public int PointLength /* Read only Property declaration */ +// { +// get { return length; } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-57.cs b/9781430248606_sourcecode/Ch01/Listing 1-57.cs new file mode 100644 index 0000000..43ec381 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-57.cs @@ -0,0 +1,59 @@ +//using System; + +//namespace Ch01 +//{ +// public delegate void EventHandler(string name); +// class Program +// { +// static void Main(string[] args) +// { +// Book book = new Book(); +// book.ShowBookName += new EventHandler(book_ShowBookName); +// book.Name = "Expert C# 5.0 with .NET Framework 4.5"; +// Console.WriteLine(book.Name); +// } + +// static void book_ShowBookName(string name) +// { +// Console.WriteLine(name); +// } +// } + +// public class Book +// { +// public event EventHandler ShowBookName; +// private string name; + +// public string Name +// { +// set +// { +// BookEventArgs eventArgs = new BookEventArgs() +// { +// BookName = "Book name updated...." +// }; +// name = value; +// OnNameChanged(eventArgs); +// } +// get +// { +// return name; +// } + +// } + +// protected virtual void OnNameChanged(BookEventArgs args) +// { +// EventHandler handler = ShowBookName; +// if (handler != null) +// { +// handler(args.BookName); +// } +// } +// } +// public class BookEventArgs : EventArgs +// { +// public string BookName { get; set; } +// } + +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-58.cs b/9781430248606_sourcecode/Ch01/Listing 1-58.cs new file mode 100644 index 0000000..df6ee7f --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-58.cs @@ -0,0 +1,43 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Calculator calculator = new Calculator(); +// Console.WriteLine(calculator.Add(10, 10)); /* 20 */ +// Console.WriteLine(calculator.Sub(10, 10)); /* 0 */ +// Console.WriteLine(calculator.Mul(9, 7)); /* 63 */ +// } +// } + +// /* interface definition*/ +// interface IAddition { int Add(int a, int b);} /* Interface declaration */ +// interface IExAddition { int Add(int a, int b);} /* Interface declaration */ +// interface ISubtraction { int Sub(int a, int b);}/* Interface declaration */ +// interface IMultiplication : IAddition { int Mul(int a, int b); } /* Extending Interface declaration */ + +// /* interface implementation*/ +// public class Calculator : +// IAddition, +// ISubtraction, +// IMultiplication, +// IExAddition /* Multiple interface implementation */ +// { +// public int Add(int a, int b) { return a + b; } + +// int IExAddition.Add(int a, int b) /* Explicit interface implementation */ +// { return 100 + a + b; } + +// public int Sub(int a, int b) { return a > b ? a - b : b - a; } + +// public int Mul(int a, int b) +// { +// var result = 0; +// for (int i = 0; i < a; ++i) +// result += Add(0, b); +// return result; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-59.cs b/9781430248606_sourcecode/Ch01/Listing 1-59.cs new file mode 100644 index 0000000..c7b6914 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-59.cs @@ -0,0 +1,26 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Calculator calculator = new ScientificCalculator(); +// Console.WriteLine(calculator.Add(10, 10)); /* 120 */ +// } +// } + +// /* Interface declaration */ +// interface IAddition { int Add(int a, int b); } + +// /* Interface implementation */ +// public class Calculator : IAddition +// { +// public virtual int Add(int a, int b) { return a + b; } +// } + +// public class ScientificCalculator : Calculator +// { +// public override int Add(int a, int b) { return 100 + a + b; } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-6.cs b/9781430248606_sourcecode/Ch01/Listing 1-6.cs new file mode 100644 index 0000000..64f906a --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-6.cs @@ -0,0 +1,15 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IBook book = new Book(); /* book is an instance of the Book */ +// } +// } + +// interface IBook { } + +// class Book : IBook { } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-60.cs b/9781430248606_sourcecode/Ch01/Listing 1-60.cs new file mode 100644 index 0000000..9e35932 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-60.cs @@ -0,0 +1,40 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// public enum Planets +// { +// Sun, +// Mercury, +// Venus, +// Earth, +// Mars, +// Jupiter, +// Saturn, +// Uranus, +// Neptune +// } +// static void Main() +// { +// DisplayInformation(Planets.Earth); +// DisplayInformation(Planets.Mars); +// DisplayInformation(Planets.Jupiter); +// } +// static void DisplayInformation(Planets planets) +// { +// switch (planets) +// { +// case Planets.Earth: +// Console.WriteLine("Third planet from the Sun"); +// break; +// case Planets.Mars: +// Console.WriteLine("The fourth planet from the Sun"); +// break; +// default: +// Console.WriteLine("Please provide valid Planet name"); +// break; +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-61.cs b/9781430248606_sourcecode/Ch01/Listing 1-61.cs new file mode 100644 index 0000000..197a7ad --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-61.cs @@ -0,0 +1,33 @@ +//using System; +//namespace Ch01 +//{ +// /* A delegate which will encapsulate a method which accept two parameter +// * and return int */ +// delegate int BinaryOperation(int x, int y); + +// class Program +// { +// static void Main(string[] args) +// { +// Calculate(Add, new Tuple(10, 10)); /* 20 */ +// Calculate(Sub, new Tuple(10, 10)); /* 0 */ +// Calculate(Sub, new Tuple(1, 10)); /* 9 */ +// } + +// static void Calculate( +// BinaryOperation binaryOperation, Tuple data) +// { +// Console.WriteLine(binaryOperation(data.Item1, data.Item2)); +// } + +// static int Add(int x, int y) +// { +// return x + y; +// } + +// static int Sub(int x, int y) +// { +// return x > y ? x - y : y - x; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-62.cs b/9781430248606_sourcecode/Ch01/Listing 1-62.cs new file mode 100644 index 0000000..f5463cd --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-62.cs @@ -0,0 +1,22 @@ +//using System; + +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// int a = 10, b = 0; +// Division div = new Division(); +// Console.WriteLine("{0}/{1}={2}", a, b, div.Divide(a, b)); +// } + +// public class Division +// { +// public int Divide(int a, int b) +// { +// return a / b; +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-7.cs b/9781430248606_sourcecode/Ch01/Listing 1-7.cs new file mode 100644 index 0000000..77c2a9d --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-7.cs @@ -0,0 +1,19 @@ +//using System; +//namespace Ch01 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// AClass aClass = new AClass(); +// Console.WriteLine(aClass.MethodA(10)); +// Console.ReadLine(); +// } +// } + +// public class AClass +// { +// public int MethodA(int a) { return a * MethodB(); } +// public int MethodB() { return 10; } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-8.cs b/9781430248606_sourcecode/Ch01/Listing 1-8.cs new file mode 100644 index 0000000..4c39faa --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-8.cs @@ -0,0 +1,16 @@ +//using System; +//using System.Collections; + +//namespace Ch01 +//{ +// class MainClass +// { +// static void Main(string[] args) +// { +// ArrayList al = new ArrayList(); +// al.Add("C#"); +// Console.WriteLine(al.Count); /* 1 */ +// Console.WriteLine(al[0]); /* C# */ +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Listing 1-9.cs b/9781430248606_sourcecode/Ch01/Listing 1-9.cs new file mode 100644 index 0000000..ca5c8d5 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Listing 1-9.cs @@ -0,0 +1,18 @@ +//using System; +//using System.Collections; + +//namespace Ch01 +//{ +// class MainClass +// { +// static void Main(string[] args) +// { +// Hashtable htArray = new Hashtable(); +// htArray["1"] = "Milky way"; +// htArray["2"] = "Galaxy"; +// Console.WriteLine(htArray.Count); /* 2 */ +// Console.WriteLine(htArray["1"]); /* Milky way */ +// Console.WriteLine(htArray["2"]); /* Galaxy */ +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch01/Program.cs b/9781430248606_sourcecode/Ch01/Program.cs new file mode 100644 index 0000000..f89678d --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Program.cs @@ -0,0 +1,31 @@ +using System; /* importing namespace */ + +namespace Ch01 /* namespace declaration */ +{ + class Program /* class declaration*/ + { + static void Main(string[] args) /* method declaration */ + { + PowerGenerator pg = new PowerGenerator(); + pg.ProcessPower(); + } /* end of method declaration */ + } /* end of class declaration */ + + public class PowerGenerator + { + const int limit = 3; /* constant declaration */ + const string + original = "Original number", + square = "Square number"; + + public void ProcessPower() + { + Console.WriteLine("{0,16}{1,20}", + original, square); /* statement*/ + for (int i = 0; i <= limit; ++i) /* iteration statement*/ + { + Console.Write("{0,10}{1,20}\n", i, Math.Pow(i, 2)); + } + } + } +} /* end of namespace declaration */ diff --git a/9781430248606_sourcecode/Ch01/Properties/AssemblyInfo.cs b/9781430248606_sourcecode/Ch01/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..b12673f --- /dev/null +++ b/9781430248606_sourcecode/Ch01/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Ch01")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Ch01")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("c5135208-bec0-4422-bf8a-493c3e2d39a1")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/9781430248606_sourcecode/Ch01/app.config b/9781430248606_sourcecode/Ch01/app.config new file mode 100644 index 0000000..c5e1dae --- /dev/null +++ b/9781430248606_sourcecode/Ch01/app.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch01/bin/Release/Ch01.exe b/9781430248606_sourcecode/Ch01/bin/Release/Ch01.exe new file mode 100644 index 0000000000000000000000000000000000000000..8939db469ccc8a2ccf90bf2948e1fe3671fc14e1 GIT binary patch literal 4608 zcmeHKUu+!38UOa;m^dU>l2S^Vl1|Q{A`q|7zN0w7CgAld`^VXXU3FaOKtq8qwixeN3UdUVWCwnESY_W&T%c_wj#(oGOuFas6Xpmc0` zOa{?+qxZBtqBjHS`dG-Z(gk$3h17dnp6GNh&GVaFS2T_-MLVe?h~7aRcuyFyH_Yz7 z4L))>_3(a#_z0Yp&Ym{d3L3|?kux)9Hj^Dc!JM7s0{;c^$WMrhh}T6QDTRUK)fKOJ z4V#j;z{vR$UBjHy8JRmjU&Qz(=mFL}?fO;F+@NmEeUoU2iT^#6rTcXbbRd@Ll5jK# zkA~5C&YcSykAswZ#yO2YH7*!~^lObTY0hGLIqgOz-Qb~ zQ*<94)ObYWF^%IIPiUOcIIr=C8lMIpM0Tv}XuPbk4LnRQ0*}Hg`x(+`(!HpMiO4Pk z57G0$5si;(%xeA<^fT}anp4vFWBLs^m*{UmMehNhr+))qp#Rdql}_GBMYlshe9mq& zNOb2kwdmI(S3XIF^~|^_TauRJ^F=eLp=>{Johp^uDwGXcs$P_KNQ;)^k!gp1Kvsa= z6idyO$P1l@G*@My9N)u6qcY?&Jc9#EKI;dUWSZ}r6*>7E3dz`=Y#iM+V#ihDys)`H($hGr}5x0mKg)WFoqdYI|2J= zc)DxOpl_S!X3O2(bUaCXnvXt%%ER|{MMXz7U8{W#`)(iWh^|EBh720u?T$lIpAg?N z=s@>-i@&}q#6)I%g6Nn*NA1VPvyV+=CP%B%&Wz@A6BDD=wMlC%M2Gp%DW~p#DzKX8d~dd8OTCZF>w*8Qiccx(-qCyp@tst} z-BE;rl~S?vp9jN*H>}UjUjOuk-`#lW?VGG~_GIO>?_a9Swwf{s3nLtKrQ}C}EerUb zS~%OX8ckQK3g=t#s~0P+$?sS2^`xbwW}3}fmFT_Xo`PBWi06W5{jGDKZAzXg_`z&T z>Jveq7E+oum+v0Dcpf5=*R!vIE0EH6tiUVk0Z^0iYl;O)i*KssJMhqd>fU~rM**q=LIneXKGnjMx^T5Zq;(Mi| z9FM28G`?Rtl7vP4jxb==q5yUryhkK#dbCEqUUHQ9Rw_ekfvX_5D8xD+RNP)0_yk4` z#1vwc1AhHBmfq28GI(3WKRK#mMwHXHeaCYV-WC3?*iLhcp8~C8J^qT(GI$XgT_3B^ z381wZ(>QL~Ot-U-A*|=DLcP{Q4le3uQ3EvL){bqPpjw*4Z@~l5SpZens|(1uNo^fj z9qaks+Rqd8Dhd2d=vZ+&;RV6Iml8d$4*Txp%ha7?IIe563|*gU6rnC*Pt==n!wque znrvOWy)xVDGO2ZDP&ygFY=hTrSh;#r90I={mN) z4Na@rOpnDD!XQ%Nytn4xWjqsUtq0#q+EDh08ddw$!}0;a`$LT13u_jVB7qxMsOZCP`@{W4DQ>6Z+Ve*r&$2 fMZkiovCbC)!8_|K&_wb- + + diff --git a/9781430248606_sourcecode/Ch01/bin/Release/Ch01.pdb b/9781430248606_sourcecode/Ch01/bin/Release/Ch01.pdb new file mode 100644 index 0000000000000000000000000000000000000000..d83728ffa3bc668b8e11e26b4d095f955fe24be1 GIT binary patch literal 11776 zcmeHMO=whC6h1RaYbKLuCrWHnD$_QC8l9hz)(}b~nT$4?A(l~48HkgY7c)ubz4&I@ zM(84Kp^J9oq8m#~E2S-Mabu+mttE)qs)(Q>f})}z=ps?+B6N{>zWd%aqlhAdWqfnb zg`nw_m=SuxHZMXpAm!qvS~oqG}jUxlKc z(@j@;Je=_IYx(ZK)6?q@-u>*mD|=5~m3a{dR^&be9_9bBDHi&FgwgYdrTfq*zaCBZ zz2AOp-r2zJBu(`E;N5#PzG2VJ8)pK$+wHLb+t0TJ2F?Z!uOOPP>N>prCu7a&{!hFA zxZQE?6YJ+aI5vRR{r9!^N2B3-OVGb>^5T10+p50L3j)%=OZmLCTeY(|1ZJjYrZDCo zqnPz=sSeW|PQ}MYbt@lxvpEuNP9@C`EKQG@{kn*ZkEOGtBYG|s8;nF#8!dB(mClB= z9MMo)st>t!kz2EK=R|G|xe=+$+!}I^&gI5_^Dc8c+QEc2sk5no;+cM4y%zC|a}B=? z-S~2I;*{rU*FVzp6QLL{ND#(w88gcM=bM}Rx3G?Ma(s2x6_o}8Sa%^>5kPA$I87>? z1FXLYv#=%78H4qDst6$8_tNgjYHAE@PVUO(^(-x!(?c=vrH=rw6GbjWUjbdtWut7k)B7tl?3{oh`_`lDV5%QavlLh`{88wAru2h3~^M2GU2DoZvew zF@IYB`c)pk39kqt=M{lETh?~OJ6cwAnpFowcjR1?(kVs=FQ4#hMTF=6yEKBBry%r8 zN}T=W%q{MTgGj!YI8~zxn^2)mRibiRm$4-)ANT*CA#Qb;FK5GD#(+s-Bc0WA6wX;% zcu-IG>sH^0sSVqPfeb$hg^PXx!c`Ny)5KsvGPYB!tC^%G` literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch01/obj/x86/Debug/Ch01.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch01/obj/x86/Debug/Ch01.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..14e4f68 --- /dev/null +++ b/9781430248606_sourcecode/Ch01/obj/x86/Debug/Ch01.csproj.FileListAbsolute.txt @@ -0,0 +1,5 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch01\bin\Debug\Ch01.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch01\bin\Debug\Ch01.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch01\bin\Debug\Ch01.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch01\obj\x86\Debug\Ch01.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch01\obj\x86\Debug\Ch01.pdb diff --git a/9781430248606_sourcecode/Ch01/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch01/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..793a1ac81bab7acd8b9dd33da6e35ac0bde1e172 GIT binary patch literal 6630 zcmeHMdruoj5Vyf>FoYJyfrh`>?hgU6x40#R5>;*N zaOF{_q&=GpBPZ&0;cn(PQpp`A6&LPWCS#=WlS<}1M|+a3xy;j&I;rHgS8=%YmbJ>_ zn7M0}bhf%sU8-g>_ClIw=?I!!{(z-*k2^Nn+jKRPqOmJ!qrs$6q;k`3cv?M#!H=oq zh$gdNE5+&+r?qjanTxYh6VN*++$ygXxWlF`>e}3P@-P)nkyvBvnqv9Y`RLr{LW|BRs8DqPF;1~ zt`GUmDxO^9UmTTmz)z*GOf%0Vv$T+$smX?|sVp%nt)p$KkJM!C3S+z>MHM21UQJ0> z<4Vic`G7b$rWuBC1{7Tk#sw?WS43OF<;P4uznPuqs^QQU8oWBNmuR!yf!k78OerB> z!|b^RpCILWLzrFkT+QpOH{`0OZj=-mBEy74BEvw3qR}XUFVH_nN-d>X9g+@K&C-}g z#*fTpl3T_*2*F`yZ|{~akmozp@z^%y@^CKbTGEocwN$dMEFm3UIo~<+|9j&sEzt#Q zVKK9kooDIgmHpIh^SGl^?MEE;!wu^lR~L;AQnVjg6zrycD8J)574ileBxpZ!Xpo>` zy*T#~+{TB2jKyR4ID!PQKqP(-2>gs9i6a?9G7e;n+y@#V6F}D6#U315Ede@iQpwB! z!J5YVjdB1CQz!GrLh1}v_7LR8X@`6Qdc2=j&2=G;&5ct)wL14=E}fY(OTv>D%L$vA zD@)6n`D}V_et9vyc%XcNg@W8sI%A5;Z|3RpqM2tEuLe{Bs4N5UDKaITlK|xwS(QoV z0$?&MY8|oor|8EdkeSOfvcAn(L{gGyBWFC5tR+!k6AGDYp7<%fCaZ77V=b614)VL^DCKe^J%}l@@-;zJp&87{qPEvCqemMKa~Gccl`J~ z2Lp%wGVqSOzoV5Ho_d2<_25+<>ZLSnr0c&z4&aJkS0e|C|G`ENPP#QGko+ABPP6Nm z^}$UXt8E`F8uTOY!(RN5?mxy7g}Xh7oIvD@;GcXCB;55T2B`cw)D$XEi`sxs69}lW-ShJXlM37L TUxVZCzy8@UIR1ii@&5R~?S+<= literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch01/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/9781430248606_sourcecode/Ch01/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch01/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/9781430248606_sourcecode/Ch01/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch01/obj/x86/Release/Ch01.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch01/obj/x86/Release/Ch01.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..bec02ac --- /dev/null +++ b/9781430248606_sourcecode/Ch01/obj/x86/Release/Ch01.csproj.FileListAbsolute.txt @@ -0,0 +1,6 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch01\bin\Release\Ch01.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch01\bin\Release\Ch01.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch01\bin\Release\Ch01.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch01\obj\x86\Release\ResolveAssemblyReference.cache +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch01\obj\x86\Release\Ch01.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch01\obj\x86\Release\Ch01.pdb diff --git a/9781430248606_sourcecode/Ch01/obj/x86/Release/Ch01.exe b/9781430248606_sourcecode/Ch01/obj/x86/Release/Ch01.exe new file mode 100644 index 0000000000000000000000000000000000000000..8939db469ccc8a2ccf90bf2948e1fe3671fc14e1 GIT binary patch literal 4608 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 literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch01/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch01/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..5ab1f9c97fb0f50c68937141e12491207ea59e0a GIT binary patch literal 5705 zcmeHLdruoj5VyfxFoYJ7X-mdERz-Fe;I&TlsskHupDVxwPbcZZO;uel?I5>;*O za1}7Gqyv`=D<|r8;cw;(X>$jp;=*6cW~}g&Hgkce0|{$B1X?mLZEgn@k2}9Wt1OPd zU#n#1tBcj8YBuXGX4pI%A(hMT(X<|L&n11Ez6L28ZzXFqKw3p6H~mJS)if@C$UIM+ zfcsJ@s8_sJp{cV+EefI z>qR_zXZ+$S(?dU%zG7ycOK`N19MojP)l8OvN#}5z=|eT%kfMqKAt$CJ)VR{JbG0i}d|iNSfHuXdJEzhYQzd(c(lEX;Gk_qaL5W$@`mb`<6 zhDYg7lE@emV;o7$xQk@{wAiULt0hDkCrpAJApzTZQz%CTHhqj+XS!RRJC(T5JToRx z&e5w?dtHblyU;{*pmSf%WwLX2Nd(e?oNysz7MiTyz?yF74l`L>RDQRc%P;IAc)%3c zc~DrA%UDN>poDiEVT2-7L4uF<$8wl+2+2>#`cIL}TsE)^g~(8268V$FHzN&ygf7*YgYlItdG!kP3rL%=<`w_;}9| z6Io6Oii`&+f#p_htgkf$KxT-CFeDw1%}%%xEnIjkkwcdskWEgUPqT8RLna%c?GI7S zZ#`AhEv%vV85D2#RD4wNC4?GgQG?$P4SA-SMWh7!9JYo!zv!1&p-xJvN2uX#KfEI0 zk5Tw;KZO5U_rmx*K?Mi>Qn1DSKS)c0HnTwm?njXvRN!8n4ECs882flGs;iNG#s7rS z{p0qz96A3aqTTG>BhKLbLN^lcJ!)7-T;I%me$$elX^-KOU`BxF2EE6hY50 kUeB@9+ebmTliD4VC@G;f{P$q@_`mzi!R`^=QSFWY2TJT{kN^Mx literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch02/Ch02.csproj b/9781430248606_sourcecode/Ch02/Ch02.csproj new file mode 100644 index 0000000..4651fe8 --- /dev/null +++ b/9781430248606_sourcecode/Ch02/Ch02.csproj @@ -0,0 +1,72 @@ + + + + Debug + x86 + 8.0.30703 + 2.0 + {BA648C1E-279B-4198-B305-2DF1C043CFA2} + Exe + Properties + Ch02 + Ch02 + v4.5 + + + 512 + + + x86 + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + false + + + x86 + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch02/Listing 2-1.cs b/9781430248606_sourcecode/Ch02/Listing 2-1.cs new file mode 100644 index 0000000..7b4eeed --- /dev/null +++ b/9781430248606_sourcecode/Ch02/Listing 2-1.cs @@ -0,0 +1,19 @@ +//using System; + +//namespace Ch02 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Person aPerson = new Person() +// { +// Name = "A" +// }; +// } +// } +// public class Person +// { +// public string Name { get; set; } +// } +//} diff --git a/9781430248606_sourcecode/Ch02/Listing 2-11.cs b/9781430248606_sourcecode/Ch02/Listing 2-11.cs new file mode 100644 index 0000000..e618296 --- /dev/null +++ b/9781430248606_sourcecode/Ch02/Listing 2-11.cs @@ -0,0 +1,15 @@ +//using System; +//using System.Collections.Generic; +//namespace Ch02 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList ll = new List(); +// for (int i = 0; i <= Int16.MaxValue * 2; ++i) +// ll.Add(i); +// foreach (int st in ll) ; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch02/Listing 2-12.cs b/9781430248606_sourcecode/Ch02/Listing 2-12.cs new file mode 100644 index 0000000..a21bf85 --- /dev/null +++ b/9781430248606_sourcecode/Ch02/Listing 2-12.cs @@ -0,0 +1,16 @@ +//using System; +//using System.Collections; + +//namespace Ch02 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// ArrayList ll = new ArrayList(); +// for (int i = 0; i <= Int16.MaxValue * 2; ++i) +// ll.Add(i); +// foreach (int st in ll) ; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch02/Listing 2-2.cs b/9781430248606_sourcecode/Ch02/Listing 2-2.cs new file mode 100644 index 0000000..12fa29a --- /dev/null +++ b/9781430248606_sourcecode/Ch02/Listing 2-2.cs @@ -0,0 +1,19 @@ +//namespace Ch02 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// TestClass testClass = new TestClass(); +// testClass.TestMethod(10); +// } +// } + +// public class TestClass +// { +// public int TestMethod(int a) +// { +// return a + a; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch02/Listing 2-3.cs b/9781430248606_sourcecode/Ch02/Listing 2-3.cs new file mode 100644 index 0000000..bbdd7df --- /dev/null +++ b/9781430248606_sourcecode/Ch02/Listing 2-3.cs @@ -0,0 +1,22 @@ +//namespace Ch02 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Math fc = new Math(); +// var result = fc.Factorial(3); +// } +// } + +// public class Math +// { +// public int Factorial(int a) +// { +// if (a <= 1) +// return a; +// else +// return a * Factorial(a - 1); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch02/Listing 2-4.cs b/9781430248606_sourcecode/Ch02/Listing 2-4.cs new file mode 100644 index 0000000..4f4b627 --- /dev/null +++ b/9781430248606_sourcecode/Ch02/Listing 2-4.cs @@ -0,0 +1,14 @@ +//namespace Ch02 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// TestClass testClass = new TestClass(); +// } +// } + +// public class TestClass +// { +// } +//} diff --git a/9781430248606_sourcecode/Ch02/Listing 2-5.cs b/9781430248606_sourcecode/Ch02/Listing 2-5.cs new file mode 100644 index 0000000..95401c6 --- /dev/null +++ b/9781430248606_sourcecode/Ch02/Listing 2-5.cs @@ -0,0 +1,25 @@ +//using System; + +//namespace Ch02 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// byte aByte = 1; +// int aInt = 10; +// float aFloat = 10.5f; +// long aLong = 10; +// bool aBool = true; +// char aChar = 'C'; +// IntPtr aIntPtr = IntPtr.Zero; +// string aString = "string literal"; + +// ReferenceType referenceType = new ReferenceType(); + +// Console.WriteLine("Finish the execution"); +// } +// } + +// public class ReferenceType { } +//} diff --git a/9781430248606_sourcecode/Ch02/Listing 2-6.cs b/9781430248606_sourcecode/Ch02/Listing 2-6.cs new file mode 100644 index 0000000..f5817ab --- /dev/null +++ b/9781430248606_sourcecode/Ch02/Listing 2-6.cs @@ -0,0 +1,33 @@ +//namespace Ch02 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// int aInt = 2012; +// TestClass aTestClass = new TestClass(); +// AInterface aInterfaceImplementation = new InterfaceImplementation(); +// AStruct aAStruct = new AStruct(); +// } +// } + +// public class TestClass +// { +// public void TestMethod() {/*Code removed*/} +// } + +// public interface AInterface +// { +// void AMethod(); +// } + +// public class InterfaceImplementation : AInterface +// { +// public void AMethod() {/*Code removed*/} +// } + +// public struct AStruct +// { +// public int ANumber { get; set; } +// } +//} diff --git a/9781430248606_sourcecode/Ch02/Listing 2-8.cs b/9781430248606_sourcecode/Ch02/Listing 2-8.cs new file mode 100644 index 0000000..55c9431 --- /dev/null +++ b/9781430248606_sourcecode/Ch02/Listing 2-8.cs @@ -0,0 +1,36 @@ +//using System; + +//namespace Ch02 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// int aInt = 2012; +// string aStringLiteral = "Expert C# 5.0: with the .NET 4.5 Framework"; +// TestClass testClass = new TestClass(); + +// Console.WriteLine("{0} {1}.", +// testClass.CastingString(aStringLiteral), +// testClass.BoxInt(aInt)); +// } +// } + +// public class TestClass +// { + +// public int BoxInt(object aInt) +// { +// int unboxedInt = 0; +// unboxedInt = (int)aInt; +// return unboxedInt; +// } + +// public string CastingString(object aStringLieteral) +// { +// string unboxedString = string.Empty; +// unboxedString = (string)aStringLieteral; +// return unboxedString; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch02/Program.cs b/9781430248606_sourcecode/Ch02/Program.cs new file mode 100644 index 0000000..2d9df81 --- /dev/null +++ b/9781430248606_sourcecode/Ch02/Program.cs @@ -0,0 +1,21 @@ +using System; + +namespace Ch02 +{ + class Program + { + static void Main(string[] args) + { + Person aPerson = new Person() + { + Name = "A" + }; + } + } + public class Person + { + public string Name { get; set; } + } +} + + diff --git a/9781430248606_sourcecode/Ch02/Properties/AssemblyInfo.cs b/9781430248606_sourcecode/Ch02/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..a08e5b5 --- /dev/null +++ b/9781430248606_sourcecode/Ch02/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Ch02")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Ch02")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("3f17f6f1-423c-4bcf-ab80-d8449a6e40f3")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/9781430248606_sourcecode/Ch02/app.config b/9781430248606_sourcecode/Ch02/app.config new file mode 100644 index 0000000..c5e1dae --- /dev/null +++ b/9781430248606_sourcecode/Ch02/app.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch02/bin/Debug/Ch02.vshost.exe b/9781430248606_sourcecode/Ch02/bin/Debug/Ch02.vshost.exe new file mode 100644 index 0000000000000000000000000000000000000000..bb84a51ac4f20534146c09f2fd9c928d15a903b2 GIT binary patch literal 11600 zcmeG?2~<)?tG75|5OPOMcC{DsnWb(K|p-9Gz zCYX{WA(Jm;dIfQqiJ};SrLL}G(n&hl8zFy;j>apOj_;bS1<^27Oc^0Hz(7W(Czb%1 z@VUW90w!d%4!)s8@lWO`4L-o%@Fz33`3PxI|9bMyD%lrO3DBh`b_0^65V}%-gn|b^ zWm*RtcF<41tL^XP%x>1H-pWw-?KO@iBWB8={z?S^v{7pXzI!Jo%+8WXB|Jbhzz%$;+6FHiiU_~N3I z3EN^9UtHuj{7z%|8vGH<%)(m1Ea7^jMXH#Y>ya2$DiaMPF|c+I&NvSYVbqF9*~#r#ILj8dWjm251tb7C6J%*T7omHQ z|3QZ`M<(G55b{zd>0OBcT-q z$5D_+!Bh&aq+kUFn<&Vjy~Gre83lc5nD5M>aGT=)?fZgOM>nV`Kqv zI0bDf=!~2J||60WgZ0+&DGHhBHk2136`;HfS!lVrq~L;Qp?LLw4#2#K5zlOj)1BCy1d77#r{JpDO<77O@Xp{xhn!4xZ$h!p@= zFfDSIN{Pg1K}r~3)_Zst+KZ6#Bz!U1wTDViV=OmGAajRFq+hp^({qI>UpIiLVv=~h zxay+kDH5kh_;K;yXzG;G*Tj7I0^&~_{e-b1Ng|izo-6pOSGO>vq9h3^M-Ep;2n2i? z;VA;Ob9u6_h6EBx&>#pUI*0gkg>gyTxL$JaT8kGU;HGf+ao-Tzcp`=5x@Rq2jC5KA zDL81CbnCa%R49SU_|be|v6omoM|<(PaYE7-c~ay>L?^|?aX&MN4jh;n*m;M|z$BDt zLV?wpRH>I1yLLe*EkY6~5>Aj35>FW2!};IZ6RZg`l4U+2WpPr3Jg{aVFJ1yBKdala z!{Q|bH-_8;-f}`H`;N<(`ErFZ0s_H?nELq^^AiFst^h{IAPxchk}HJW2r40D)L?1| zN5+-NKyKu|BH5O9=>_$oO%{WM1RNkt$|LX>+U#yGW4SL{W#Dq<^-?pWTs_=s z+sMi))7<${{lWc@(;pS&e4xt(nf|K_4fiC?yA3+_%vvY*l!4@4iv}=BM|c$3*(8Ejv=a+B_=Ss*JEQXuIqpixQ3a_4(W> zyEKm#xtQrM)b=Fwn2Ghv>;fV#EMt&fQn_Nx)Omd`sf+@qw7IY%8d=~wU}z94&^xT# z?O1hMy$gBFV<=2Rx4X%UFBOAX2ZDn_3e*V(5c0klQtL7p%59=S80yz;986D8eMaINL%0wc8G%|*e$MEHmK74Q% z!Aa2qJ`Z*(ODar2$dFuS7_I+z60R6Fg7-`wLHR_mTT!wUQ^u&61Y`_zfv7uESG-PI zL=b$z5K9F^02Rvd;_$Xby>8#V-GB3vXN;}hekVw2b}%EC!sUQGG$K1h+L_tfM2e!P zOCtHUjw8EKEOAUULMMT4SGq-(nO(Kd^R74+p{XEA@0kR39#JP2L9k*3WE=-K98<(} zqe}k)-;w}E#jg-2r+wZ^?F0lS_7$G&N8TMKx*>Foia|&WS+)ZhjyMosg(Ghi3MD_V zlt8Ha0ra7)2BA8})Ao*tk&JOg@{U+nBp*Xj>4k4odB9b z6pKVuFB2+W3WHWIV5QK`MKb6of?7waV3?3D4|tM6FFxSozD0@ZgTuNz{_IdRDFbAO z)M2bA&`X3r0!GVV7PvbAj0da~>bA%RB0vJogpW-A5a@S}5mS7nfE2jYc(OeJxZnXV z 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 + + diff --git a/9781430248606_sourcecode/Ch02/bin/Release/Ch02.exe b/9781430248606_sourcecode/Ch02/bin/Release/Ch02.exe new file mode 100644 index 0000000000000000000000000000000000000000..368969989129a6c1308ea9ef4f417828419a9c8c GIT binary patch literal 5120 zcmeHKTWlOx8UAN>ZEq4{Id%zcDPgisP-^V;+FpVaY{%$DZ%}mvjExIWy<%!lSzsA)+Xr_unUa9ldPRj2{d;P^>o?g)m-L{=TD+tXCZOyc`>{3pvI7N{-dGh$VhUw*5qH9WozWw`mmzv&g zk*b_fVnoLwK_}baE&wz<(|9Ck=+t`Lpg4Zn(+(cUWsA`ClSDoIzt=a|`ViWM-3KK- z4U-)WVSBeh^fB-~7iGFEdAQDZgr-6?QfPZx0jC$b|G8}-JzNE@wDMY9IV{mZ1(*x}~s6%IK;2HG> zgwcVx8u=;{EekWb2WAw43{B>`ok}DVW680ROH$H77VuBVz5i=O6G-A6N#_F3w9CF6 zF^KxflJ{TFQ3^D62lZdQKA%OO1%Dq*_s>{P0laLOt~~tlA1DZw=-=nZ=rjZ%`|!wj zM$%FzZOU>ZPnJo!d@#So%SDzlS=Kx)0Nd6n_cK_09!k3()Y#S-7tI&%;mA?Oh^vkUM5!Rp#EB7#-WxStpgz*w%nsJ`-A>aT# z!nDq4GCs~&0}j*Ez|YaMz#go(#P2emrSH%cO3)ZqG(lgWMc~)zKfpewKgrn7_*u$A zp2HqZ&^5n6iSc+lx?AiVWaTCRV{c{D8x z&v$I9_=e+IW`S}wKM)mKDm*5PfYQYx<-!6jghJfQ zD}2K-WKF$nJAPmqK4nEAESL3t(bZ+JguR9Y4md(SF5>ap6NG?Q zWkpzel_`HOy_I@l|{TYq8YFC9zviwm#4`__-2 zT>b4F#a{c$+Uh;2TTgdrYAhCuXr$n~r+lg#RCiQUly0@NJ942;s~r%WN=tDp+NJdN zMCF@!OrfZJi*V*hmOi0SZ);0vzrLwyqsb9y?^o#DSZU<*rHiGJq15P@F_bD8r6IjA zo*XKUr&5>niz1aQjo~y?sA~j=8UBc_Ds*pRaW>ythrz}YP09mLp?vpUEmhX^T}!XY zcc@3s(OMcU6;t>G!ucdW7_yy_U;Mm!`e9FZ7ae=HY6yO1@|&LXgwMG&?_%=Mz?Fgq zFW|vlY$cb?{pRK~zc~FuEd9;EnWC5Isguw@aCvRUakkcGtFG{ZOux*0E$4)uAu`wm ztemat71t8}nk?FyQ+RBxI(~5tOD=R@urT2k3%Gy6SF`<5(pr<--#70qMC%#Ho2?4| z-tgB+h(ytn_W;~z&yzOI)JJe96;N@mamjb?Mvt>(XaB7FZDIK~^35aUa{d7$knlF6 zT~IGg6Ya{4)@aEL(Ld^Hmh7r2^s6{E*MYON0&1R?aBi-nU!*zEvi&mp_J8Yko0IGP z71r+E)fy~!@?=zCRVNR2Oq|OCHf<`A!}@a+MW2UOht!8&rvT#|aP{^|^c}cS5L19r zCgkNKEd7DUByq>8|D|xy;T@+G-?*Bdv+(ZYeUo^k`{Efo@2uC}?zLy&FWObzPX16R}VNwJaPBcf@BKD;mXiQ!fe dFkoW1xk6y%&iW8Et^Paumi*!HQTxzU;D7eACdL2& literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch02/bin/Release/Ch02.exe.config b/9781430248606_sourcecode/Ch02/bin/Release/Ch02.exe.config new file mode 100644 index 0000000..e365603 --- /dev/null +++ b/9781430248606_sourcecode/Ch02/bin/Release/Ch02.exe.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch02/bin/Release/Ch02.pdb b/9781430248606_sourcecode/Ch02/bin/Release/Ch02.pdb new file mode 100644 index 0000000000000000000000000000000000000000..e85980d9fb8496da71a14ef771a2cc75faee45c3 GIT binary patch literal 15872 zcmeHOeQZ-z6u&KX>>G+O<`Ahk2r}5ZZnC)$KGuzFuw~#RfLXG2UB~LSc4<2q29t>f z6TyTKVjzlwh#$ca5{Uw`WKkqRM2M&%Mnfb<(HOqsAGkl5zu$ZBw%r(Ym5ycGJL9)| z-?``Ak8{pF_r7~arQ7NA`n`<-i#^Alm1U`{US=uCwpvpXGfJuj$f*1iGmt&PXHbTk z=)XsS20Him>NJKmP`Fmy8pFdM^FvSiD%ViRI5trOl2p;#YeG7%6TfsC)f%`}ziRQR z@fXb7t3`L!e&fEAr7L#-@!PlN?Tgjtq&-`nF*jZ?cg+>zR(yF^-Fu!T=NdLwd~&_` zyBB@$@21<3RvvjH_3ElG{g+p7O)g71|4#VCnuBug8O8x|z*Ha|NCZ-V@jyH<0bqS* zU=r{kkOoWvCIbn8PO;TMtn7d3`2({zw3ywbvF)W^+fZp>p!mD<6n%$Q`n>CXj#l;}`cAZkUgkH+a-ba80h|LQQB_>4 zMg#Giis!o1F({q`$UWXdJb#4ewHl}o`TfT4w(vEZYd3Y043MZduJ_X}TMa9||EHC8 zu$;PNnG29ay-L{~XWZ$OrM@Z4vT#{E>J(!QB%waq`N^Zk&zG(~Yrt`TR7Ck$+5el# zXO2a(|7Qn})Uk7wqD0u(E}Y6_n4$O`vT;V7E@X?jJU$RsIvj|7lLY^bqu(k;mF+F$ zXA6_*^x{8HeZ206@)NTXjDu<8Cf<|lqye?bHdt>uD+R?1(V2o%4=Jna$e^5gusmEA zXCRQB9h6o3IB>m_w0i$m+fc`XJlnMZ`9K9w2Xp}2fJnqSO8b|adb;A)oi*@0CK`&R z{f}?@bW0@rvtL2mqhacl=SA!T^=UHB@8b(anlBt?A&B1=lCVLIW86`Sv^A}&@hMlJ z$>-ewewr9({t4+O2=F~AOMW_d9ROozh;LE+4t-Hl6bT2ACM;%%vX4Q2z49Cf9{qJN z{&z7Y8Sh}tQGA>}RR_Qq(0_w+Mux0%w)QkLp!x6-M+<6<%!ft%^@9`Y&ICW3VmhOZ3D3asDQFh;PAo$o`NR zn=+N0602WgN7S`;0%CWfkZb4;O@{O1UEnAXTxZar$uKhP|1$c$3pfm%1h{@(2O<&o z`xyy2HaW$LQ9WnslkFw1Tw@cS3MCVgs?;?W#5LA zhP(aY9D6ivb03ioaQ<;_E(FQ|xj(@&geUmg5c|VW+iR%nSClk_za9~(N_=LV7s6gu znN?fr3HUbFuJpP+0mjr>O1X))(l!8T;_)z^b%B+X82|7j4fKh~W|A^)*Tz8D(&W|c-GqqfMZ$V%C z4wsMJWr(BR{uXV26&nA%=`t_(22?^kNOSc8Qi^N{Br3<{A3b&`Z+|%e4IUYx=%P(^LK4(so z%hBNS)wg(^%_^hOjVr;N=x^KxzV=hv_`g+#UE*O=t4v%f_z*zi&Xp%xGXWlqlH>%Z zd^-?N=GdTV7-k6|@Bf;$7}Wp%?^o!M=iUL7F9Enmmy>+3DSe*zP5dsT2{<>V0*tNn zKbnK8=e(E*&{T|{Q-H|;&#igpUK8;qS+_q_G-%>l9&Z0v?qdHd;L``TY4(ptez10@ zoU}dLqwQ&T`T=b(*HBKs{Y)UdQG|pbPebl&^4fIV5Df^ EUjSG9*Z=?k literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch02/bin/Release/Ch02.vshost.exe b/9781430248606_sourcecode/Ch02/bin/Release/Ch02.vshost.exe new file mode 100644 index 0000000000000000000000000000000000000000..bb84a51ac4f20534146c09f2fd9c928d15a903b2 GIT binary patch literal 11600 zcmeG?2~<)?tG75|5OPOMcC{DsnWb(K|p-9Gz zCYX{WA(Jm;dIfQqiJ};SrLL}G(n&hl8zFy;j>apOj_;bS1<^27Oc^0Hz(7W(Czb%1 z@VUW90w!d%4!)s8@lWO`4L-o%@Fz33`3PxI|9bMyD%lrO3DBh`b_0^65V}%-gn|b^ zWm*RtcF<41tL^XP%x>1H-pWw-?KO@iBWB8={z?S^v{7pXzI!Jo%+8WXB|Jbhzz%$;+6FHiiU_~N3I z3EN^9UtHuj{7z%|8vGH<%)(m1Ea7^jMXH#Y>ya2$DiaMPF|c+I&NvSYVbqF9*~#r#ILj8dWjm251tb7C6J%*T7omHQ z|3QZ`M<(G55b{zd>0OBcT-q z$5D_+!Bh&aq+kUFn<&Vjy~Gre83lc5nD5M>aGT=)?fZgOM>nV`Kqv zI0bDf=!~2J||60WgZ0+&DGHhBHk2136`;HfS!lVrq~L;Qp?LLw4#2#K5zlOj)1BCy1d77#r{JpDO<77O@Xp{xhn!4xZ$h!p@= zFfDSIN{Pg1K}r~3)_Zst+KZ6#Bz!U1wTDViV=OmGAajRFq+hp^({qI>UpIiLVv=~h zxay+kDH5kh_;K;yXzG;G*Tj7I0^&~_{e-b1Ng|izo-6pOSGO>vq9h3^M-Ep;2n2i? z;VA;Ob9u6_h6EBx&>#pUI*0gkg>gyTxL$JaT8kGU;HGf+ao-Tzcp`=5x@Rq2jC5KA zDL81CbnCa%R49SU_|be|v6omoM|<(PaYE7-c~ay>L?^|?aX&MN4jh;n*m;M|z$BDt zLV?wpRH>I1yLLe*EkY6~5>Aj35>FW2!};IZ6RZg`l4U+2WpPr3Jg{aVFJ1yBKdala z!{Q|bH-_8;-f}`H`;N<(`ErFZ0s_H?nELq^^AiFst^h{IAPxchk}HJW2r40D)L?1| zN5+-NKyKu|BH5O9=>_$oO%{WM1RNkt$|LX>+U#yGW4SL{W#Dq<^-?pWTs_=s z+sMi))7<${{lWc@(;pS&e4xt(nf|K_4fiC?yA3+_%vvY*l!4@4iv}=BM|c$3*(8Ejv=a+B_=Ss*JEQXuIqpixQ3a_4(W> zyEKm#xtQrM)b=Fwn2Ghv>;fV#EMt&fQn_Nx)Omd`sf+@qw7IY%8d=~wU}z94&^xT# z?O1hMy$gBFV<=2Rx4X%UFBOAX2ZDn_3e*V(5c0klQtL7p%59=S80yz;986D8eMaINL%0wc8G%|*e$MEHmK74Q% z!Aa2qJ`Z*(ODar2$dFuS7_I+z60R6Fg7-`wLHR_mTT!wUQ^u&61Y`_zfv7uESG-PI zL=b$z5K9F^02Rvd;_$Xby>8#V-GB3vXN;}hekVw2b}%EC!sUQGG$K1h+L_tfM2e!P zOCtHUjw8EKEOAUULMMT4SGq-(nO(Kd^R74+p{XEA@0kR39#JP2L9k*3WE=-K98<(} zqe}k)-;w}E#jg-2r+wZ^?F0lS_7$G&N8TMKx*>Foia|&WS+)ZhjyMosg(Ghi3MD_V zlt8Ha0ra7)2BA8})Ao*tk&JOg@{U+nBp*Xj>4k4odB9b z6pKVuFB2+W3WHWIV5QK`MKb6of?7waV3?3D4|tM6FFxSozD0@ZgTuNz{_IdRDFbAO z)M2bA&`X3r0!GVV7PvbAj0da~>bA%RB0vJogpW-A5a@S}5mS7nfE2jYc(OeJxZnXV z z&=#?g6V$=wK;MbkDI7SI!WeQ^CS`v~K!cP!6Ls~m0g03HCzBh+@8@%Usja`( zRUhEh9p)q@kq8zn0BMtae6H~x8XbD4CjSrk|1SY%$D7f!QUCv!`kxhkEdlC{lSV^$ z#(*)3eJrzmv)`&?O0<%U0XU$nXc)#;#rr5K4A-F31}PvsUQuPZBF4Zn9B3G$Bm$p^ z+xEg};-+*Al`u;U)AZq(Ape5E<&Z}jc}SDTg)8}o8}*{e(B;nwSKrv~9H~AQdwjF4 zytOrcZE;D4HXF}iOv5wi{v~u8Mx&{)%KP37{uH^cp}uRh0dOQ{563MO=@S^LIzzi} z*-Ueu1(WUMCW9mBJY@F8S7T}Q7cHV+lSJGOh0EM6pm>nUzHKpl6$ z9c>`lvT>V;0qSfUsM-S(QUsnti42G+>d+=|*gAM$lA^MX%6D98JY3pjA|YD~*C3Hf zI!d8LOrl5_)5VyI&Yv)5j2m?@HmHX&^2W*}Z{k3e8SLqfXJA8d^=>_4m;$0_V49#^ zOof(#VW>J~&gG~|Z>JyZwzIFlH?{XmuKzHk_$TifPtW_@znJ%9f`4fAtJSn01FrfB ztW8{r!)J`EReh`HB{h53l@(|NA2%KTqU3jV<00qWP1>SYpB?DEdD*xjtD7pVhyFNj zM5^doKSSp{CoQMuI*V7a&Lc3JPwm5ex9k;QIcq=E?BUJJcpq7ko;81Q#f$yRH=cFe z5b>h8C`l0N{0;jDkyEj#=T`F^;m(Gk`yGp8_z3auXm&^k}+WEW& zt7|si1E186D{>Cz=$(lTNh#Zrb28j@eMWGuP+_y>1}xWTU-akX<*7w!&MZO!KM`yl<0Iky_CdajPx~l`pPt| z$>+pR`I2Jekh!{h0v3O2*dY1m?JYwS9YKpmkIwCT-t`Ud(QP+eljKnc!#*(-a5`kT z0g2FH^k?Wc8k~_M@#J04uOACs6XM0%=*4@6tCG!{3|R?3Oanu+%XiKlXZGUE z!9ZE*#9=baq{{4%<^IcOqJRgdAL`xYAJ-^NeM$2?aXP2*9jEc=`nqt@GoIHrFZ877 z5D5;-{if^h*b5Dr3*JQX3MwLMovuvFn~*ig_O zk_@%dsf#MDsyA$ID8J6!cNiZypQ)>Ec`)>qd&?C3ZlO6p=ZN^1ms`uvq8sKAQ zfscvq^f6rQtSjXuHGA(P1@JTf#$8Q194GKG4mLJ+xQ!F(aM-wQcNI_1{9o}n>XhMt zUu6UY1&4MyDEgl`sDJ5u>hJ|0yd^(y5{efDA>;Z(7Y$r?PjYj7DP5Xj_FIuQ;#||u z&=`HjptkOe`hci{cqM?Z7vhf99GoD>l0v+ePeXBU3qPaY&~t<=wFG+B6+ z#7wd_Toon!sa($~gE+SJV0lvRz}B3Vx@ML0%;cLcIyzbFJj7-Qx%H5C{?KB zV)bs>V(P#!&?I*~Y-FW0>YOq#X6WJl)4sj!y~u4pgyDia<4z?GCHC32@iLisl(jWa zB48zUKl$@SiPqu-K8dx4=Na<-T59ddf#ZY)DBQQpJ7O4PG(HMRG=3gh!hRVYf4>Vg|mrXkTWVH8ZMCy}ER7;eB(l^wQ%yM`u5I9&Q(rmhn*QiiF;(9r&nOJ#V&GkQz7Xqj0TK z^O@lhdg@LU(>`AR#3-X}yxO*SV{P4$>0!?7srRge4bKBC^T#* z8ujN(wwQ*TObBqI$!owPV^5*ifid&vi=Rmq1C#e1#Vx2JfMM)~-!tV!vGuFB3ApEfFq{p}!dMD5Lx^n8<%5`h3 zY-+WGLQiHscD23c$1XJAw=||@NN`ro(edZ!DZG1{bZF5}KU~_$7st*V7JGkR_0#zW znx2$>)ZU~zX{d$uS+{H9jKT7~i7|=e!frG_zjb(h=1*z2=lRndmcOnqRt`6eAKP@T zULI*ZXP+sfDtz*Eecq?E)X`5aF-!xTl4VL!MXRyOUndaGYI)>Z zu(EiD##GB7z36E+#TPOIhYyX6_g-|%I!h~f&-=ZD@&!*!zt?%!pmk-w#;XjubmWN@ zvq~GMDLzuD$hNJ1w|sJzd)CDH%Y_v~tb7|qYdu@0-=Al;IHAMeWMJmtnN7asag_gW zL_1oFeLAlk{V+0wLA}Bq(fzv%BYsbNImS0lGAXnxP6jvn0VS z#1pxH9tnLFM)iuE;l!sL)bfD7?4zl{wS5Y+0p(P_1#@O>=Il@ACm``x-gY^mDc=9xt-l|Et>xj!WIP z1-I_UI^@3^TC}#YA~`H%)Mbg+9^*IQpvu5O6?TP3ipxh(;ZdJ2UDH1o9)0Bq$neM! zq9J>5O*U-GN0Gr1RM}(|Pp|wZ!lPlhDV(|55w>#zR?u zTwZiW!KDt92M?pa%c}05oj>hRl!evkvztGzim*2b>R<18)sQ>JWn^WzZolLe&RT7# zV%aZI4&}pYc~-u<=@ae>TDJ{fk)NwEcO%-IY@)QvQcT}(X|iO^t>dLb#~=2eq?jBg z@vLx-X0QbUz#${W|Dpclw{v_*5rdhcl@VV|HTHR zycK$~{f}QRhRQV}l%a z_&OAc+Zt`Rn&<6T-6zvAudYnGW7+4IMM1Y$jagZ3r=8xa)ogIHCgyBlu(SWdj{}=c zcU~&WX&ry;*JtnD2Si~HzssE?pY^M#J%_n{+1k7{ho=rI>4%%Nl+NWYHL$Sw(QnBp z&&&l+Ze7Z34zjX${@vXjD?@6kFE0BHKI4%;yW-`D{3we%hw|qw?I*9A_Ca@8nMj-G zVLoxxLgz(p_o|OK7JjGi6P{4eP#6%dfKI=|-Mj;D56rE5t@W&V&~0MpNl^k?eUsD@or(o=%<5Y<=i#wO)^B40xI9 zd0bOvYv8?G`+?W!9>`$BRsYAMOGaLJDR*7+mp%W0d-Wor22q<`$)Gg7 zKl^2B1Kb=sBlyp*1HDZPo{$(B7^<@0ds1VI&%VctZnxQM6_;AD?KkZ_-IB+AQuFR- z*T@4KKV+yLG;cjqr21gk0kg5c?SFGQ1q0uRBF8snjVnaH&pIK9b_#y4rru^YJE+h7&5x zs9AY=_}k`&Dd{i6GvD}@ZFQneOa0+~>&jEiPnP;qT3sG&zv|har+8omHf8dz22H=; z|G3?jRGN1{Sif4WDVp0bTj*@RtN(Vr;u|t(L+}jR;2s?)vNLFEfKvX)jqS?= z5R9$oSXSzMt1XGb^?I14vsJq*N*EYgw<#&GH6ftVGuOHLi0kD!oT# zDkga({4jf8)|P2o8}DIStxW-pd_APHW6y?rQ=9OU`%I(z6l^RuzPlq2jlZ((H}0Xz zol`F;9lGF}@iatK!0=jeLS@HJSJ!c7;z64O-#&Dg&#>pd-(SCc=u5RdrFLto)@OT1 zr0ohy+M*GwvZH-+f&1KvF_Z3; + + diff --git a/9781430248606_sourcecode/Ch02/bin/Release/Ch02.vshost.exe.manifest b/9781430248606_sourcecode/Ch02/bin/Release/Ch02.vshost.exe.manifest new file mode 100644 index 0000000..061c9ca --- /dev/null +++ b/9781430248606_sourcecode/Ch02/bin/Release/Ch02.vshost.exe.manifest @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/9781430248606_sourcecode/Ch02/obj/x86/Debug/Ch02.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch02/obj/x86/Debug/Ch02.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..3012858 --- /dev/null +++ b/9781430248606_sourcecode/Ch02/obj/x86/Debug/Ch02.csproj.FileListAbsolute.txt @@ -0,0 +1,5 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch02\bin\Debug\Ch02.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch02\bin\Debug\Ch02.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch02\bin\Debug\Ch02.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch02\obj\x86\Debug\Ch02.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch02\obj\x86\Debug\Ch02.pdb diff --git a/9781430248606_sourcecode/Ch02/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch02/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..d501e0c01cb6bcc89e868d3d514fa080623adcce GIT binary patch literal 6630 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 literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch02/obj/x86/Release/Ch02.pdb b/9781430248606_sourcecode/Ch02/obj/x86/Release/Ch02.pdb new file mode 100644 index 0000000000000000000000000000000000000000..e85980d9fb8496da71a14ef771a2cc75faee45c3 GIT binary patch literal 15872 zcmeHOeQZ-z6u&KX>>G+O<`Ahk2r}5ZZnC)$KGuzFuw~#RfLXG2UB~LSc4<2q29t>f z6TyTKVjzlwh#$ca5{Uw`WKkqRM2M&%Mnfb<(HOqsAGkl5zu$ZBw%r(Ym5ycGJL9)| z-?``Ak8{pF_r7~arQ7NA`n`<-i#^Alm1U`{US=uCwpvpXGfJuj$f*1iGmt&PXHbTk z=)XsS20Him>NJKmP`Fmy8pFdM^FvSiD%ViRI5trOl2p;#YeG7%6TfsC)f%`}ziRQR z@fXb7t3`L!e&fEAr7L#-@!PlN?Tgjtq&-`nF*jZ?cg+>zR(yF^-Fu!T=NdLwd~&_` zyBB@$@21<3RvvjH_3ElG{g+p7O)g71|4#VCnuBug8O8x|z*Ha|NCZ-V@jyH<0bqS* zU=r{kkOoWvCIbn8PO;TMtn7d3`2({zw3ywbvF)W^+fZp>p!mD<6n%$Q`n>CXj#l;}`cAZkUgkH+a-ba80h|LQQB_>4 zMg#Giis!o1F({q`$UWXdJb#4ewHl}o`TfT4w(vEZYd3Y043MZduJ_X}TMa9||EHC8 zu$;PNnG29ay-L{~XWZ$OrM@Z4vT#{E>J(!QB%waq`N^Zk&zG(~Yrt`TR7Ck$+5el# zXO2a(|7Qn})Uk7wqD0u(E}Y6_n4$O`vT;V7E@X?jJU$RsIvj|7lLY^bqu(k;mF+F$ zXA6_*^x{8HeZ206@)NTXjDu<8Cf<|lqye?bHdt>uD+R?1(V2o%4=Jna$e^5gusmEA zXCRQB9h6o3IB>m_w0i$m+fc`XJlnMZ`9K9w2Xp}2fJnqSO8b|adb;A)oi*@0CK`&R z{f}?@bW0@rvtL2mqhacl=SA!T^=UHB@8b(anlBt?A&B1=lCVLIW86`Sv^A}&@hMlJ z$>-ewewr9({t4+O2=F~AOMW_d9ROozh;LE+4t-Hl6bT2ACM;%%vX4Q2z49Cf9{qJN z{&z7Y8Sh}tQGA>}RR_Qq(0_w+Mux0%w)QkLp!x6-M+<6<%!ft%^@9`Y&ICW3VmhOZ3D3asDQFh;PAo$o`NR zn=+N0602WgN7S`;0%CWfkZb4;O@{O1UEnAXTxZar$uKhP|1$c$3pfm%1h{@(2O<&o z`xyy2HaW$LQ9WnslkFw1Tw@cS3MCVgs?;?W#5LA zhP(aY9D6ivb03ioaQ<;_E(FQ|xj(@&geUmg5c|VW+iR%nSClk_za9~(N_=LV7s6gu znN?fr3HUbFuJpP+0mjr>O1X))(l!8T;_)z^b%B+X82|7j4fKh~W|A^)*Tz8D(&W|c-GqqfMZ$V%C z4wsMJWr(BR{uXV26&nA%=`t_(22?^kNOSc8Qi^N{Br3<{A3b&`Z+|%e4IUYx=%P(^LK4(so z%hBNS)wg(^%_^hOjVr;N=x^KxzV=hv_`g+#UE*O=t4v%f_z*zi&Xp%xGXWlqlH>%Z zd^-?N=GdTV7-k6|@Bf;$7}Wp%?^o!M=iUL7F9Enmmy>+3DSe*zP5dsT2{<>V0*tNn zKbnK8=e(E*&{T|{Q-H|;&#igpUK8;qS+_q_G-%>l9&Z0v?qdHd;L``TY4(ptez10@ zoU}dLqwQ&T`T=b(*HBKs{Y)UdQG|pbPebl&^4fIV5Df^ EUjSG9*Z=?k literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch02/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch02/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..e9a99a400a835e0e9d1d6264d0a9d92c2b3210d0 GIT binary patch literal 5705 zcmeHLdruoj5VyfxFoYJ7X-mdERz-Fe;I&TlsskHupDVxwPbcZZO;uel?I5>;*O za1}7Gqyv`=D<|r8;cw;(X>$jp;=*6cW~}g&Hgkce0|{$B1X?mLZEgn@k2}9Wt1OPd zU#n#1tBcj8YBuXGX4pI%A(hMT(X<|L&n11Ez6L28ZzXFqKw3p6H~mJS)if@C$UIM+ zfcsJ@s8_sJp{cV+EefI z>qR_zXZ+$S(?dU%zG7ycOK`N19MojP)l8OvN#}5z=|eT%kfMqKAt$CJ)VR{JbG0i}d|iNSfHuXdJEzhYQzd(c(lEX;Gk_qaL5W$@`mb`<6 zhDYg7lE@emV;o7$xQk@{wAiULt0hDkCrpAJApzTZQz%CTHhqj+XS!RRJC(T5JToRx z&e5w?dtHblyU;{*pmSf%WwLX2Nd(e?oNysz7MiTyz?yF74l{GMsQhj>mtWXL@PH|> z^PsRKm$8l%K?(0T!U#pEf&?GykL57u5R#ve^`9b{xolt;3X!44B=RSTZ$=)N3q}e@ z6Cr;Jd&8*T_zXK^G-S$V@bR7_ zCbFCm6d4at0?V!1SYK-hfXomNVMsb2o1JhYTDb67B8M(NAe)>xpJwGshfFp?+aIEu z-+HR1TUbN!GbrBfsrabkO9(a0q6WVo8uCmti%1FdIcyDee$g+lLYatTsKC8C8SGKHF!u3WR97SWivJ0t z`^W8bIdc9EF?d(`Sj-rsU?xVtwxnlv$?x-CUej_zoTr%1MXx#Ok? zAcms9#7<%ZuT|oN6+;ARVyD|u1RklSLI8;!;~A0%r@3oybk2;gkvnzzGxs%JZEQ%q zK*G1<%=iY!XHLu4-(R%OjBk + + + Debug + x86 + 8.0.30703 + 2.0 + {490B178E-CAD9-49D9-8B0F-AD699E18FFBF} + Exe + Properties + Ch03 + Ch03 + v4.5 + + + 512 + + + x86 + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + false + + + x86 + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch03/Listing 3-1.cs b/9781430248606_sourcecode/Ch03/Listing 3-1.cs new file mode 100644 index 0000000..8c87941 --- /dev/null +++ b/9781430248606_sourcecode/Ch03/Listing 3-1.cs @@ -0,0 +1,29 @@ +//using System; + +//namespace Ch03 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// BuiltInValuePassingAsValue temp = new BuiltInValuePassingAsValue(); +// temp.MethodA(); +// } +// } + +// public class BuiltInValuePassingAsValue +// { +// public BuiltInValuePassingAsValue() +// { Console.WriteLine("Built in value type passing as value"); } + +// public void MethodA() +// { +// int a = 10, b = 10; +// MethodB(a, b); +// Console.WriteLine("Method A: {0},{1}", a, b); +// } + +// public void MethodB(int a, int b) +// { Console.WriteLine("Method B: {0},{1}", a, b); } +// } +//} diff --git a/9781430248606_sourcecode/Ch03/Listing 3-12.cs b/9781430248606_sourcecode/Ch03/Listing 3-12.cs new file mode 100644 index 0000000..1bfcd9d --- /dev/null +++ b/9781430248606_sourcecode/Ch03/Listing 3-12.cs @@ -0,0 +1,47 @@ +//using System; + +//namespace Ch03 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// ObjectAsValue temp = new ObjectAsValue(); +// temp.MethodA(); +// } +// } + +// public class ObjectAsValue +// { +// public ObjectAsValue() +// { +// Console.WriteLine("Object as value"); +// } + +// public void MethodA() +// { +// Person aPerson = new Person() +// { +// Name = "APerson" +// }; +// MethodB(ref aPerson); +// Console.WriteLine("Method A: {0}", aPerson.Name); +// } + +// public void MethodB(ref Person aPerson) +// { +// Console.WriteLine("Method B: {0}", aPerson.Name); +// aPerson = new Person() +// { +// Name = "New name" +// }; +// } +// } + +// public class Person +// { +// public string Name +// { get; set; } +// } + +//} diff --git a/9781430248606_sourcecode/Ch03/Listing 3-15.cs b/9781430248606_sourcecode/Ch03/Listing 3-15.cs new file mode 100644 index 0000000..4e111a8 --- /dev/null +++ b/9781430248606_sourcecode/Ch03/Listing 3-15.cs @@ -0,0 +1,16 @@ +//using System; +//namespace Ch03 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// int result = GetTotalPrice(); /* Test scenario 1- with the value */ +// result = GetTotalPrice(55); /* Test scenario 2 - with the value*/ +// } +// public static int GetTotalPrice(int basePrice = 40) +// { +// return basePrice - (basePrice * 10) / 100; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch03/Listing 3-17.cs b/9781430248606_sourcecode/Ch03/Listing 3-17.cs new file mode 100644 index 0000000..dd335f2 --- /dev/null +++ b/9781430248606_sourcecode/Ch03/Listing 3-17.cs @@ -0,0 +1,15 @@ +//using System; + +//namespace Ch03 +//{ +// class Program +// { +// static void Main(string[] args) { } + +// /* The C# compiler complain in here as reference type Person used for the default value.*/ +// public static string GetPersonDetails(Person aPerson = new Person()) +// { return aPerson.ToString(); } +// } + +// public class Person { } +//} diff --git a/9781430248606_sourcecode/Ch03/Listing 3-18.cs b/9781430248606_sourcecode/Ch03/Listing 3-18.cs new file mode 100644 index 0000000..3c4b58d --- /dev/null +++ b/9781430248606_sourcecode/Ch03/Listing 3-18.cs @@ -0,0 +1,21 @@ +//using System; + +//namespace Ch03 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// GetNameWithDefaultValue(); +// GetNameWithDefaultValue("Expert C# 5.0 by Mohammad Rahman", "C#"); +// } + +// /* Default value has been set as of string type */ +// public static void GetNameWithDefaultValue( +// string name = "Expert C# 5.0: with the .NET 4.5 Framework", +// string language = ": C#") +// { +// Console.WriteLine("{0} {1}", name, language); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch03/Listing 3-4.cs b/9781430248606_sourcecode/Ch03/Listing 3-4.cs new file mode 100644 index 0000000..d63a139 --- /dev/null +++ b/9781430248606_sourcecode/Ch03/Listing 3-4.cs @@ -0,0 +1,34 @@ +//using System; + +//namespace Ch03 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// BuiltInValuePassingAsRef temp = new BuiltInValuePassingAsRef(); +// temp.MethodA(); +// } +// } + +// public class BuiltInValuePassingAsRef +// { +// public BuiltInValuePassingAsRef() +// { +// Console.WriteLine("Built in value type passing as ref"); +// } + +// public void MethodA() +// { +// int a = 10, b = 10; +// MethodB(ref a, ref b); +// Console.WriteLine("Method A: {0},{1}", a, b); +// } + +// public void MethodB(ref int a, ref int b) +// { +// Console.WriteLine("Method B: {0},{1}", a, b); +// a *= 2; b *= 2; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch03/Listing 3-5.cs b/9781430248606_sourcecode/Ch03/Listing 3-5.cs new file mode 100644 index 0000000..f5817ab --- /dev/null +++ b/9781430248606_sourcecode/Ch03/Listing 3-5.cs @@ -0,0 +1,33 @@ +//namespace Ch02 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// int aInt = 2012; +// TestClass aTestClass = new TestClass(); +// AInterface aInterfaceImplementation = new InterfaceImplementation(); +// AStruct aAStruct = new AStruct(); +// } +// } + +// public class TestClass +// { +// public void TestMethod() {/*Code removed*/} +// } + +// public interface AInterface +// { +// void AMethod(); +// } + +// public class InterfaceImplementation : AInterface +// { +// public void AMethod() {/*Code removed*/} +// } + +// public struct AStruct +// { +// public int ANumber { get; set; } +// } +//} diff --git a/9781430248606_sourcecode/Ch03/Listing 3-6.cs b/9781430248606_sourcecode/Ch03/Listing 3-6.cs new file mode 100644 index 0000000..f5817ab --- /dev/null +++ b/9781430248606_sourcecode/Ch03/Listing 3-6.cs @@ -0,0 +1,33 @@ +//namespace Ch02 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// int aInt = 2012; +// TestClass aTestClass = new TestClass(); +// AInterface aInterfaceImplementation = new InterfaceImplementation(); +// AStruct aAStruct = new AStruct(); +// } +// } + +// public class TestClass +// { +// public void TestMethod() {/*Code removed*/} +// } + +// public interface AInterface +// { +// void AMethod(); +// } + +// public class InterfaceImplementation : AInterface +// { +// public void AMethod() {/*Code removed*/} +// } + +// public struct AStruct +// { +// public int ANumber { get; set; } +// } +//} diff --git a/9781430248606_sourcecode/Ch03/Listing 3-7.cs b/9781430248606_sourcecode/Ch03/Listing 3-7.cs new file mode 100644 index 0000000..4feee73 --- /dev/null +++ b/9781430248606_sourcecode/Ch03/Listing 3-7.cs @@ -0,0 +1,41 @@ +//using System; + +//namespace Ch03 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// ObjectAsValue temp = new ObjectAsValue(); +// temp.MethodA(); +// } +// } + +// public class ObjectAsValue +// { +// public ObjectAsValue() +// { +// Console.WriteLine("Object as value"); +// } +// public void MethodA() +// { +// Person aPerson = new Person() +// { +// Name = "APerson" +// }; +// MethodB(aPerson); +// Console.WriteLine("Method A: {0}", aPerson.Name); +// } +// public void MethodB(Person aPerson) +// { +// Console.WriteLine("Method B: {0}", aPerson.Name); +// aPerson.Name = "Updated" + aPerson.Name; +// } +// } + +// public class Person +// { +// public string Name +// { get; set; } +// } +//} diff --git a/9781430248606_sourcecode/Ch03/Program.cs b/9781430248606_sourcecode/Ch03/Program.cs new file mode 100644 index 0000000..18396c6 --- /dev/null +++ b/9781430248606_sourcecode/Ch03/Program.cs @@ -0,0 +1,21 @@ +using System; + +namespace Ch03 +{ + class Program + { + static void Main(string[] args) + { + GetNameWithDefaultValue(); + GetNameWithDefaultValue("Expert C# 5.0 by Mohammad Rahman", "C#"); + } + + public static void GetNameWithDefaultValue( + string name = "Expert C# 5.0: with the .NET 4.5 Framework", + string language = ": C#") + { + Console.WriteLine("{0} {1}", name, language); + } + } +} + diff --git a/9781430248606_sourcecode/Ch03/Properties/AssemblyInfo.cs b/9781430248606_sourcecode/Ch03/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..5387806 --- /dev/null +++ b/9781430248606_sourcecode/Ch03/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Ch03")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Ch03")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("7af71ae9-ad9e-4299-98b5-98f1d7e8f104")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/9781430248606_sourcecode/Ch03/app.config b/9781430248606_sourcecode/Ch03/app.config new file mode 100644 index 0000000..c5e1dae --- /dev/null +++ b/9781430248606_sourcecode/Ch03/app.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch03/bin/Debug/Ch03.vshost.exe b/9781430248606_sourcecode/Ch03/bin/Debug/Ch03.vshost.exe new file mode 100644 index 0000000000000000000000000000000000000000..bb84a51ac4f20534146c09f2fd9c928d15a903b2 GIT binary patch literal 11600 zcmeG?2~<)?tG75|5OPOMcC{DsnWb(K|p-9Gz zCYX{WA(Jm;dIfQqiJ};SrLL}G(n&hl8zFy;j>apOj_;bS1<^27Oc^0Hz(7W(Czb%1 z@VUW90w!d%4!)s8@lWO`4L-o%@Fz33`3PxI|9bMyD%lrO3DBh`b_0^65V}%-gn|b^ zWm*RtcF<41tL^XP%x>1H-pWw-?KO@iBWB8={z?S^v{7pXzI!Jo%+8WXB|Jbhzz%$;+6FHiiU_~N3I z3EN^9UtHuj{7z%|8vGH<%)(m1Ea7^jMXH#Y>ya2$DiaMPF|c+I&NvSYVbqF9*~#r#ILj8dWjm251tb7C6J%*T7omHQ z|3QZ`M<(G55b{zd>0OBcT-q z$5D_+!Bh&aq+kUFn<&Vjy~Gre83lc5nD5M>aGT=)?fZgOM>nV`Kqv zI0bDf=!~2J||60WgZ0+&DGHhBHk2136`;HfS!lVrq~L;Qp?LLw4#2#K5zlOj)1BCy1d77#r{JpDO<77O@Xp{xhn!4xZ$h!p@= zFfDSIN{Pg1K}r~3)_Zst+KZ6#Bz!U1wTDViV=OmGAajRFq+hp^({qI>UpIiLVv=~h zxay+kDH5kh_;K;yXzG;G*Tj7I0^&~_{e-b1Ng|izo-6pOSGO>vq9h3^M-Ep;2n2i? z;VA;Ob9u6_h6EBx&>#pUI*0gkg>gyTxL$JaT8kGU;HGf+ao-Tzcp`=5x@Rq2jC5KA zDL81CbnCa%R49SU_|be|v6omoM|<(PaYE7-c~ay>L?^|?aX&MN4jh;n*m;M|z$BDt zLV?wpRH>I1yLLe*EkY6~5>Aj35>FW2!};IZ6RZg`l4U+2WpPr3Jg{aVFJ1yBKdala z!{Q|bH-_8;-f}`H`;N<(`ErFZ0s_H?nELq^^AiFst^h{IAPxchk}HJW2r40D)L?1| zN5+-NKyKu|BH5O9=>_$oO%{WM1RNkt$|LX>+U#yGW4SL{W#Dq<^-?pWTs_=s z+sMi))7<${{lWc@(;pS&e4xt(nf|K_4fiC?yA3+_%vvY*l!4@4iv}=BM|c$3*(8Ejv=a+B_=Ss*JEQXuIqpixQ3a_4(W> zyEKm#xtQrM)b=Fwn2Ghv>;fV#EMt&fQn_Nx)Omd`sf+@qw7IY%8d=~wU}z94&^xT# z?O1hMy$gBFV<=2Rx4X%UFBOAX2ZDn_3e*V(5c0klQtL7p%59=S80yz;986D8eMaINL%0wc8G%|*e$MEHmK74Q% z!Aa2qJ`Z*(ODar2$dFuS7_I+z60R6Fg7-`wLHR_mTT!wUQ^u&61Y`_zfv7uESG-PI zL=b$z5K9F^02Rvd;_$Xby>8#V-GB3vXN;}hekVw2b}%EC!sUQGG$K1h+L_tfM2e!P zOCtHUjw8EKEOAUULMMT4SGq-(nO(Kd^R74+p{XEA@0kR39#JP2L9k*3WE=-K98<(} zqe}k)-;w}E#jg-2r+wZ^?F0lS_7$G&N8TMKx*>Foia|&WS+)ZhjyMosg(Ghi3MD_V zlt8Ha0ra7)2BA8})Ao*tk&JOg@{U+nBp*Xj>4k4odB9b z6pKVuFB2+W3WHWIV5QK`MKb6of?7waV3?3D4|tM6FFxSozD0@ZgTuNz{_IdRDFbAO z)M2bA&`X3r0!GVV7PvbAj0da~>bA%RB0vJogpW-A5a@S}5mS7nfE2jYc(OeJxZnXV z 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 + + diff --git a/9781430248606_sourcecode/Ch03/bin/Debug/Ch03.vshost.exe.manifest b/9781430248606_sourcecode/Ch03/bin/Debug/Ch03.vshost.exe.manifest new file mode 100644 index 0000000..061c9ca --- /dev/null +++ b/9781430248606_sourcecode/Ch03/bin/Debug/Ch03.vshost.exe.manifest @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/9781430248606_sourcecode/Ch03/bin/Release/Ch03.exe b/9781430248606_sourcecode/Ch03/bin/Release/Ch03.exe new file mode 100644 index 0000000000000000000000000000000000000000..28aada5ae276fa72f26a5147c148313a7df042cb GIT binary patch literal 4608 zcmeHKUu+yl8UOZtcI>pVlC-3MQrgKm0qWH2JKGRD*vZ*!ApTSpqDtR*qP(F>6)I9CN~iobns>Cqx=tv4y)h2Z$ic*RDoV)I1iQm z3A6iimFPjxfBpi|6W#p(Hf9~ymE<7kuXU}_L*5KQzkUFKITdH(Hz?H@(N$dp!UUy! z%VRKreh|H@<&h9waL0q7^p&onOI--PyXA=%x@kGSCG(0VeM?b4H5riw8}dwOu{DhD zzYUB&nflTZxHx*WFa6EY(Y|yxbqu&A>C2r-S|~lcph*j8(&ybNJ*!VX8MJ9DlI|oMGAqxpZxi9XYrTJWk&Ojwn2>a8mKVO3#B|P@Iy&Z_&%(?9gw40sRU1ZTbNCefk@vZ?-dx z;8Z&flvS|ZG@5GP!UF3l&Y+s7@ zP8K}3X4fNO+-thw8*Zz29WrA@X4pGX@cfpr>)UskDhtEn4Wm1lwvUC#2_wf$9o~NtzLhUl=e<6*$(fSOw1N-qwab^Xqy2Qc{Qrn zjeVwK9<~W52HxD^ES&S9Ty%R2hDz}UcZ{YQ1$!rr3MEF(@fKbC8YWRN9N^l@PbB< z>lYWxog?*368)Sk${Ll2AMQ*Q?Z9`8)`3@U91O^=`i_K0k0~H+nn$(I;_5Z!eC&=M%lMvbSdv z7Rk4Q2CW8exFxdj=HSrjQjI(%a+2h#GG+~M1I!z^`)$m+iHg_K|AbNvK8297!LQ#% z(|bxLOYNU2)OQ?cno@Uo+j0@s1DsK*$KPkCK--YV-xXRGXJ6~s*u)xvReL_=aKB|c zUD_Ceyo@STvMyq9kT-)Gpb7V7tXl`wR2=yhJc>0dpz2DxfQWr+DbMPVm+#hI9-~)? z;b#K&b3me5WqU1IC$l4Mx8s%6y?uB_kb%}BszLW3jta}oUH*1E8FamUqpaGzQy+gcggo*tAyGm>wQ6~4+NunVUay=;>JfBYlai>Bq*h1{4U{j^5bOU#?8(5t0iHAPHvj+t literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch03/bin/Release/Ch03.exe.config b/9781430248606_sourcecode/Ch03/bin/Release/Ch03.exe.config new file mode 100644 index 0000000..e365603 --- /dev/null +++ b/9781430248606_sourcecode/Ch03/bin/Release/Ch03.exe.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch03/bin/Release/Ch03.pdb b/9781430248606_sourcecode/Ch03/bin/Release/Ch03.pdb new file mode 100644 index 0000000000000000000000000000000000000000..a351b22d3c016f9ccad21f040c941c786389179e GIT binary patch literal 13824 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 z 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 + + diff --git a/9781430248606_sourcecode/Ch03/bin/Release/Ch03.vshost.exe.manifest b/9781430248606_sourcecode/Ch03/bin/Release/Ch03.vshost.exe.manifest new file mode 100644 index 0000000..061c9ca --- /dev/null +++ b/9781430248606_sourcecode/Ch03/bin/Release/Ch03.vshost.exe.manifest @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/9781430248606_sourcecode/Ch03/obj/x86/Debug/Ch03.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch03/obj/x86/Debug/Ch03.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..a53e1a9 --- /dev/null +++ b/9781430248606_sourcecode/Ch03/obj/x86/Debug/Ch03.csproj.FileListAbsolute.txt @@ -0,0 +1,5 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch03\bin\Debug\Ch03.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch03\bin\Debug\Ch03.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch03\bin\Debug\Ch03.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch03\obj\x86\Debug\Ch03.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch03\obj\x86\Debug\Ch03.pdb diff --git a/9781430248606_sourcecode/Ch03/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch03/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..89727dc1a154b638826dc5aad60900b66166621b GIT binary patch literal 6630 zcmeHMdruoj5Vyf>FoYJyfrh`>?hgU6x40#R5>;*N zaOF{_q&=GpBPZ&0;cn(PQpp`A6&LPWCS#=WlS<}1M|+a3xy;j&I;rHgS8=%YmbJ>_ zn7M0}bhf%sU8-g>_ClIw=?I!!{(z-*k2^Nn+jKRPqOmJ!qrs$6q;k`3cv?M#!H=oq zh$gdNE5+&+r?qjanTxYh6VN*++$ygXxWlF`>e}3P@-P)nkyvBvnqv9Y`RLr{LW|BRs8DqPF;1~ zt`GUmDxO^9UmTTmz)z*GOf%0Vv$T+$smX?|sVp%nt)p$KkJM!C3S+z>MHM21UQJ0> z<4Vic`G7b$rWuBC1{7Tk#sw?WS43OF<;P4uznPuqs^QQU8oWBNmuR!yf!k78OerB> z!|b^RpCILWLzrFkT+QpOH{`0OZj=-mBEy74BEvw3qR}XUFVH_nN-d>X9g+@K&C-}g z#*fTpl3T_*2*F`yZ|{~akmozp@z^%y@^CKbTGEocwN$dMEFm3UIo~<+|9j&sEzt#Q zVKK9kooDIgmHpIh^SGl^?MEE;!wu^lR~L;AQnVjg6zrycD8J)574ileBxpZ!Xpo>` zy*T#~+{TB2jKyR4ID!PQKqP(-2>gs9i6a?9G7e;n+y@#V6F}D6#U315Ede@iQpwB! z!J5YVjdB1CQz!GrLh1}v_7LR8X@`6Qdc2=j&2=G;&5ct)wL14=E}fY(OTv>D%L$vA zD@)6n`D}V_et9vyc%XcNg@W8sI%|r`Z|3RpqM2tEuLe{Bs4N5UDKaITlK|xwS(QoV z0$?&MY8|oor|8EdkeSOfvcAn(L{gGyBWFC5tR+!k6AGDYp7<%fCaZ77V=b614)VL^DCKe^J%}l@@-;zJp&87{qPEvCqemMKa~Gccl`J~ z2Lp%wGVqSOzoV5Ho_d2<_25+<>ZLSnr0c&z4&aJkS0e|C|G`ENPP#QGko+ABPP6Nm z^}$UXt8E`F8uTOY!(RN5?mxy7g}Xh7oIvD@;GcXCB;55T2B`cw)D$XEi`sxs69}lW-ShJXlM37L TUxVZCzy8@UIR1ii@&5R~Do&Q0 literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch03/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/9781430248606_sourcecode/Ch03/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch03/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/9781430248606_sourcecode/Ch03/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch03/obj/x86/Release/Ch03.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch03/obj/x86/Release/Ch03.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..d3ed545 --- /dev/null +++ b/9781430248606_sourcecode/Ch03/obj/x86/Release/Ch03.csproj.FileListAbsolute.txt @@ -0,0 +1,6 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch03\bin\Release\Ch03.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch03\bin\Release\Ch03.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch03\bin\Release\Ch03.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch03\obj\x86\Release\ResolveAssemblyReference.cache +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch03\obj\x86\Release\Ch03.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch03\obj\x86\Release\Ch03.pdb diff --git a/9781430248606_sourcecode/Ch03/obj/x86/Release/Ch03.exe b/9781430248606_sourcecode/Ch03/obj/x86/Release/Ch03.exe new file mode 100644 index 0000000000000000000000000000000000000000..28aada5ae276fa72f26a5147c148313a7df042cb GIT binary patch literal 4608 zcmeHKUu+yl8UOZtcI>pVlC-3MQrgKm0qWH2JKGRD*vZ*!ApTSpqDtR*qP(F>6)I9CN~iobns>Cqx=tv4y)h2Z$ic*RDoV)I1iQm z3A6iimFPjxfBpi|6W#p(Hf9~ymE<7kuXU}_L*5KQzkUFKITdH(Hz?H@(N$dp!UUy! z%VRKreh|H@<&h9waL0q7^p&onOI--PyXA=%x@kGSCG(0VeM?b4H5riw8}dwOu{DhD zzYUB&nflTZxHx*WFa6EY(Y|yxbqu&A>C2r-S|~lcph*j8(&ybNJ*!VX8MJ9DlI|oMGAqxpZxi9XYrTJWk&Ojwn2>a8mKVO3#B|P@Iy&Z_&%(?9gw40sRU1ZTbNCefk@vZ?-dx z;8Z&flvS|ZG@5GP!UF3l&Y+s7@ zP8K}3X4fNO+-thw8*Zz29WrA@X4pGX@cfpr>)UskDhtEn4Wm1lwvUC#2_wf$9o~NtzLhUl=e<6*$(fSOw1N-qwab^Xqy2Qc{Qrn zjeVwK9<~W52HxD^ES&S9Ty%R2hDz}UcZ{YQ1$!rr3MEF(@fKbC8YWRN9N^l@PbB< z>lYWxog?*368)Sk${Ll2AMQ*Q?Z9`8)`3@U91O^=`i_K0k0~H+nn$(I;_5Z!eC&=M%lMvbSdv z7Rk4Q2CW8exFxdj=HSrjQjI(%a+2h#GG+~M1I!z^`)$m+iHg_K|AbNvK8297!LQ#% z(|bxLOYNU2)OQ?cno@Uo+j0@s1DsK*$KPkCK--YV-xXRGXJ6~s*u)xvReL_=aKB|c zUD_Ceyo@STvMyq9kT-)Gpb7V7tXl`wR2=yhJc>0dpz2DxfQWr+DbMPVm+#hI9-~)? z;b#K&b3me5WqU1IC$l4Mx8s%6y?uB_kb%}BszLW3jta}oUH*1E8FamUqpaGzQy+gcggo*tAyGm>wQ6~4+NunVUay=;>JfBYlai>Bq*h1{4U{j^5bOU#?8(5t0iHAPHvj+t literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch03/obj/x86/Release/Ch03.pdb b/9781430248606_sourcecode/Ch03/obj/x86/Release/Ch03.pdb new file mode 100644 index 0000000000000000000000000000000000000000..a351b22d3c016f9ccad21f040c941c786389179e GIT binary patch literal 13824 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 literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch04/Ch04.csproj b/9781430248606_sourcecode/Ch04/Ch04.csproj new file mode 100644 index 0000000..9969f62 --- /dev/null +++ b/9781430248606_sourcecode/Ch04/Ch04.csproj @@ -0,0 +1,68 @@ + + + + Debug + x86 + 8.0.30703 + 2.0 + {D595E1D6-0386-47FF-98B6-1287D3D93ACF} + Exe + Properties + Ch04 + Ch04 + v4.5 + + + 512 + + + x86 + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + false + + + x86 + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + false + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch04/Listing 4-1.cs b/9781430248606_sourcecode/Ch04/Listing 4-1.cs new file mode 100644 index 0000000..a4a8fde --- /dev/null +++ b/9781430248606_sourcecode/Ch04/Listing 4-1.cs @@ -0,0 +1,37 @@ +//using System; + +//namespace Ch04 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// int valueOfA = 10, valueOfB = 20; +// Calculator calculator = new Calculator(); + +// Console.WriteLine("The sum using instance method \t{0} \nand using static method \t{1}", +// calculator.Add(valueOfA, valueOfB), +// CalculatorAsStatic.Add(valueOfA, valueOfB)); +// } +// } + +// public class Calculator +// { +// public int Add(int a, int b) /* An extra this parameter will be added in behind the +// * scene to the Parameters section of Add methods +// * stack */ +// { +// return a + b; +// } +// } + +// public static class CalculatorAsStatic +// { +// public static int Add(int a, int b) /* No extra this parameter will be added to the +// * Parameters section of Add methods +// * stack */ +// { +// return a + b; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch04/Listing 4-10.cs b/9781430248606_sourcecode/Ch04/Listing 4-10.cs new file mode 100644 index 0000000..185eb30 --- /dev/null +++ b/9781430248606_sourcecode/Ch04/Listing 4-10.cs @@ -0,0 +1,28 @@ +//using System; + +//namespace Ch04 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Calculator calculator = new Calculator(); +// Console.WriteLine(calculator.Sub(10, 5)); +// } +// } +// public static class Ch04_ExtensionMethods /* A Static class defined */ +// { +// public static int Sub(this Calculator calculator, int a, int b) +// { +// return a > b ? a - b : b - a; +// } +// } + +// public class Calculator +// { +// public int Add(int a, int b) +// { +// return a + b; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch04/Listing 4-2.cs b/9781430248606_sourcecode/Ch04/Listing 4-2.cs new file mode 100644 index 0000000..35724ca --- /dev/null +++ b/9781430248606_sourcecode/Ch04/Listing 4-2.cs @@ -0,0 +1,32 @@ +//using System; + +//namespace Ch04 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// int valueOfA = 10, +// valueOfB = 20, +// increment = 2; /* Used as the external or captured variable +// * for the anonymous method */ +// Calculator calculator = new Calculator(); + +// Console.WriteLine("The sum is \t:{0}", calculator.Add +// (delegate(int a, int b) /* Anonymous method declaration */ +// { +// return a + b + increment; /* increment is the outer variable */ +// }, valueOfA, valueOfB)); +// } +// } + +// public class Calculator +// { +// public delegate int Adder(int a, int b); + +// public int Add(Adder adder, int a, int b) +// { +// return adder(a, b); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch04/Listing 4-6.cs b/9781430248606_sourcecode/Ch04/Listing 4-6.cs new file mode 100644 index 0000000..997e6bb --- /dev/null +++ b/9781430248606_sourcecode/Ch04/Listing 4-6.cs @@ -0,0 +1,27 @@ +//using System; + +//namespace Ch04 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// string data = "abcd"; +// Console.WriteLine("{0}", data.GetLastCharacter()); /* Calls extension defined for the string type. */ +// } +// } +// public static class Ch04_ExtensionMethods /* A Static class defined */ +// { +// public static string GetLastCharacter(this string data) /* A static method with the parameter +// * this along with the type name string */ +// { +// if (data == null || data == string.Empty) +// return string.Empty; +// return data[data.Length - 1].ToString(); +// } +// public static Int32 GetNum(this Int32 dd) +// { +// return dd; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch04/Listing 4-9.cs b/9781430248606_sourcecode/Ch04/Listing 4-9.cs new file mode 100644 index 0000000..f84cf10 --- /dev/null +++ b/9781430248606_sourcecode/Ch04/Listing 4-9.cs @@ -0,0 +1,30 @@ +//namespace Ch04 +//{ +// using System; + +// /* CH04_Extensions has to declare here otherwise compiler-time error occurred. */ +// using Ch04_Extensions; + +// class Program +// { +// static void Main(string[] args) +// { +// string data = "abcd"; +// Console.WriteLine("{0}", data.GetLastCharacter()); +// } +// } +//} + +///* Extension method defined in the Ch04_ExtensionMethods class which reside +// * in the Ch04_Extensions namespace */ +//namespace Ch04_Extensions +//{ +// public static class Ch04_ExtensionMethods +// { +// public static string GetLastCharacter(this string data) +// { +// if (data == null || data == string.Empty) return string.Empty; +// return data[data.Length - 1].ToString(); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch04/Program.cs b/9781430248606_sourcecode/Ch04/Program.cs new file mode 100644 index 0000000..2773b3c --- /dev/null +++ b/9781430248606_sourcecode/Ch04/Program.cs @@ -0,0 +1,32 @@ +using System; + +namespace Ch04 +{ + class Program + { + static void Main(string[] args) + { + int valueOfA = 10, valueOfB = 20; + Calculator calculator = new Calculator(); + Console.WriteLine("The sum using instance method \t{0} \nand using static method \t{1}", + calculator.Add(valueOfA, valueOfB), + CalculatorAsStatic.Add(valueOfA, valueOfB)); + } + } + + public class Calculator + { + public int Add(int a, int b) + { + return a + b; + } + } + + public static class CalculatorAsStatic + { + public static int Add(int a, int b) + { + return a + b; + } + } +} \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch04/Properties/AssemblyInfo.cs b/9781430248606_sourcecode/Ch04/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..5615dcb --- /dev/null +++ b/9781430248606_sourcecode/Ch04/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Ch04")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Ch04")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("861c876a-e0f2-4358-9149-60620feb4693")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/9781430248606_sourcecode/Ch04/app.config b/9781430248606_sourcecode/Ch04/app.config new file mode 100644 index 0000000..c5e1dae --- /dev/null +++ b/9781430248606_sourcecode/Ch04/app.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch04/bin/Debug/Ch04.vshost.exe b/9781430248606_sourcecode/Ch04/bin/Debug/Ch04.vshost.exe new file mode 100644 index 0000000000000000000000000000000000000000..bb84a51ac4f20534146c09f2fd9c928d15a903b2 GIT binary patch literal 11600 zcmeG?2~<)?tG75|5OPOMcC{DsnWb(K|p-9Gz zCYX{WA(Jm;dIfQqiJ};SrLL}G(n&hl8zFy;j>apOj_;bS1<^27Oc^0Hz(7W(Czb%1 z@VUW90w!d%4!)s8@lWO`4L-o%@Fz33`3PxI|9bMyD%lrO3DBh`b_0^65V}%-gn|b^ zWm*RtcF<41tL^XP%x>1H-pWw-?KO@iBWB8={z?S^v{7pXzI!Jo%+8WXB|Jbhzz%$;+6FHiiU_~N3I z3EN^9UtHuj{7z%|8vGH<%)(m1Ea7^jMXH#Y>ya2$DiaMPF|c+I&NvSYVbqF9*~#r#ILj8dWjm251tb7C6J%*T7omHQ z|3QZ`M<(G55b{zd>0OBcT-q z$5D_+!Bh&aq+kUFn<&Vjy~Gre83lc5nD5M>aGT=)?fZgOM>nV`Kqv zI0bDf=!~2J||60WgZ0+&DGHhBHk2136`;HfS!lVrq~L;Qp?LLw4#2#K5zlOj)1BCy1d77#r{JpDO<77O@Xp{xhn!4xZ$h!p@= zFfDSIN{Pg1K}r~3)_Zst+KZ6#Bz!U1wTDViV=OmGAajRFq+hp^({qI>UpIiLVv=~h zxay+kDH5kh_;K;yXzG;G*Tj7I0^&~_{e-b1Ng|izo-6pOSGO>vq9h3^M-Ep;2n2i? z;VA;Ob9u6_h6EBx&>#pUI*0gkg>gyTxL$JaT8kGU;HGf+ao-Tzcp`=5x@Rq2jC5KA zDL81CbnCa%R49SU_|be|v6omoM|<(PaYE7-c~ay>L?^|?aX&MN4jh;n*m;M|z$BDt zLV?wpRH>I1yLLe*EkY6~5>Aj35>FW2!};IZ6RZg`l4U+2WpPr3Jg{aVFJ1yBKdala z!{Q|bH-_8;-f}`H`;N<(`ErFZ0s_H?nELq^^AiFst^h{IAPxchk}HJW2r40D)L?1| zN5+-NKyKu|BH5O9=>_$oO%{WM1RNkt$|LX>+U#yGW4SL{W#Dq<^-?pWTs_=s z+sMi))7<${{lWc@(;pS&e4xt(nf|K_4fiC?yA3+_%vvY*l!4@4iv}=BM|c$3*(8Ejv=a+B_=Ss*JEQXuIqpixQ3a_4(W> zyEKm#xtQrM)b=Fwn2Ghv>;fV#EMt&fQn_Nx)Omd`sf+@qw7IY%8d=~wU}z94&^xT# z?O1hMy$gBFV<=2Rx4X%UFBOAX2ZDn_3e*V(5c0klQtL7p%59=S80yz;986D8eMaINL%0wc8G%|*e$MEHmK74Q% z!Aa2qJ`Z*(ODar2$dFuS7_I+z60R6Fg7-`wLHR_mTT!wUQ^u&61Y`_zfv7uESG-PI zL=b$z5K9F^02Rvd;_$Xby>8#V-GB3vXN;}hekVw2b}%EC!sUQGG$K1h+L_tfM2e!P zOCtHUjw8EKEOAUULMMT4SGq-(nO(Kd^R74+p{XEA@0kR39#JP2L9k*3WE=-K98<(} zqe}k)-;w}E#jg-2r+wZ^?F0lS_7$G&N8TMKx*>Foia|&WS+)ZhjyMosg(Ghi3MD_V zlt8Ha0ra7)2BA8})Ao*tk&JOg@{U+nBp*Xj>4k4odB9b z6pKVuFB2+W3WHWIV5QK`MKb6of?7waV3?3D4|tM6FFxSozD0@ZgTuNz{_IdRDFbAO z)M2bA&`X3r0!GVV7PvbAj0da~>bA%RB0vJogpW-A5a@S}5mS7nfE2jYc(OeJxZnXV z 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 + + diff --git a/9781430248606_sourcecode/Ch04/bin/Debug/Ch04.vshost.exe.manifest b/9781430248606_sourcecode/Ch04/bin/Debug/Ch04.vshost.exe.manifest new file mode 100644 index 0000000..061c9ca --- /dev/null +++ b/9781430248606_sourcecode/Ch04/bin/Debug/Ch04.vshost.exe.manifest @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/9781430248606_sourcecode/Ch04/bin/Release/Ch04.exe b/9781430248606_sourcecode/Ch04/bin/Release/Ch04.exe new file mode 100644 index 0000000000000000000000000000000000000000..7754fb316e0b5a01685a5bd137868a50e6ca5f6d GIT binary patch literal 5120 zcmeHKU2Ggz6+Sb&-mIO(a^eu$CNwweM9NP+-nAWL2Rr`RwbLzj?0PqDS}c;;+3WSx zvoqWIv3IEojz|$j6-p7mZxmIPDqi|fN+2Mlswyv3AS5K7ph7}IeF+jsNEM=d_s;Hm z{R4zo%3aTQ&$;KEd(S!d*K<$ZrU(&5@qPFq(H+#HOi29qunBSJi63{;8}09&yray% zdosUjdaU9)C08#qL$__mX9dpOz-Fe+GV?iBc8Xj(c(CJCz3YW(qFE(EzdZl@`NnAP zk*e%h;zS*2K_$wivjB!~0-peeN)7!6CH)sQZQ?__C=r@?o~TRyZPj%)RG~keA<7AQ z0$sM%8(XUzLbLQ1o>eUrU)FnrdMs$wXdJgl{Uf(c6sZm3<<2L`pas zsQWM7$tWeE4%H0JyVub051y6mCGMf zNlYDmaC(4_%6RDrSh0je`+j^P{hj!PXN^xxbm(b})~JZ-e1*OSyesjy68|Q#OA+m7 zC1xaEm-sEEs>JB~5`QFHel4+Gy@&P-YC;{SEL@CHRlTOh=-U$CRK-|70g4iO5az6l zy6G7F7Mz0ES)Gf}O{I&@*Eu2YqD%C+)Qr&r6aBnIu8ikJ$$ja84d|%!^^l|IkP(%> z(;|z~%aZ#hWDjA_zS^RRnCje3*v0A1I`=%d4!Rq1as)BQ3cVolt3Z`*|JU>(+CZca zN<1m?ti+VW5s8x$vl1T%o~9=ytxGf|J|nRPJO__9u=Za9cG1i9wt4|8LC_jjLmJpk zbHHN~dnBHh?E^T0H2Rcm`Lx6w)`ms~eFL~g-vfH|KJZ!k3-F8dcN(SWW@8=^ye!9n z*lf+B&}W)7jm|m6z~YxEy_y`DUlyM#N2t;=!XQ63Y({TW=)e8XuCp>C2f^^)y)n01db zybzR1`Zn*vHuQw`gaCF7gm^0O$88M|4RTf%xusVnpiqWri* zhnp*rz4aPn{mE26;aZ?m!$T=!_>)6=FHf%Y_YMwR815ZO4UY5Ahm+VXU@!d*YzBSK%!Ie}~NG!~x}PFMAE#p2$w$l9_~ zczU@yJhY6Z#&wU&My*mT;7+f+pqZd{m&SW&OL9H!xYJcGk287Hajq3D@ut9w z`82T!N&RntirY%2X7d5m!{KYXCA9Fxu<$S1SNCWa#+xlYgk-oL#I60^38LF#LDWk! zP4s>!mMync>;+oF4S5|nO^cwiG*4H+XMr=IMfqv;-ao?ouwfk5<5C*liw#M=iNyO( zL9aSqF*Dfe7LJH44vZBX5~7?Uahv8L6~~ANxsD^mgw&RDqSvE;MyCpV@}U(TKD&GR zh15ynzzKhYxc#shX;8kU8u}TG?qOeuek$9>N#oc`LR*w1_M6i5b_q7FJoXwsrSLvT zHa{^&JM=|VzSOl5gN3~5@<1fKKf=B>NUQinc@!^Kg=WE(q;?t+SEwdED?#6f&h9ow zuMxwqALFNhgg1&9d%kWbvLnWB#49*)DDUmVBQiG&uoVY(fV}uEUT@jJ95ITVY}ehH znVoqVmNt{fod+Mvm=OyRGOUK}8Qp1j@9xh=$E#(Ft%vvVSOSM@f^pk$intWV5?Avx zy~7FS$rqF5*nBKe<6dI?(!q{Vz5c*q=)m^I5`k-9^o&)!CA{9UX}FH(toXf#Q@*Hs zWox?-%^S+>aWw(x7)JQBx!g4sB`#}ae3$x6jC4SDrydZm)+ z3w!Y0!1J^AigTa-^e3bp#`d@o;4-e&d9=9vnE-zB;(}|g;{{OS-hK8u(CC$+Z1sa9 z*9gR8ZkDfei&+B461tbQ*PS))CRkuj8hAn>jVrq4@p@3QlfFH?X}I3E&G*s1W)h$< e+SiyNFk)qW1PTlPXP%J%D}Myy{eOttGVo8_+%p6K literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch04/bin/Release/Ch04.exe.config b/9781430248606_sourcecode/Ch04/bin/Release/Ch04.exe.config new file mode 100644 index 0000000..e365603 --- /dev/null +++ b/9781430248606_sourcecode/Ch04/bin/Release/Ch04.exe.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch04/bin/Release/Ch04.pdb b/9781430248606_sourcecode/Ch04/bin/Release/Ch04.pdb new file mode 100644 index 0000000000000000000000000000000000000000..7602597c86f13d7a802ce12fa8bcb80b835f391e GIT binary patch literal 13824 zcmeHNYi!e16hG~1*%MYWt>7-ZPTHrOP{=(;UD)(lcf&@|b)_CML^+Szsp#>7gD z9|R*G_+r$=Cw`C*CW7%rTnv(kF`x+H15rc7L_hG-511hH{OGYMwPj&U5o##E%`1>lo*8H665tyv;-+1tqnHM&FnL4+5 zcjelO6K_s+zs>%Qjlg>OsOVU(`BbbCxPI~aMV##_@v(kos3nou7HZous3p_>`|3R2 zx==7Nl#FQpL{t;ZwjJSt!I+i``L}u+LK~Bb$CKd!S0qK$zcSPVZB1xLbnTSTjzAks zO=(AZ)=%F%*p2!CwNf2Z8&3+@z}XP<17Nd`j8rmZJ9aDCN83CjxJ2cWg7Dh2 z;{Ykz3=Z|6&Q+*Q7PeUy652qYjcu$FhV(wc7NC@6+L;PgU?_&Vn`z?;>n&o`V`LG2 z!xrq$MS+3a%2ZJeDOue&%c##r*(xD>|ER3q$J};jOS^yQZHP67_Ry}Av4OFJv72!R z;~vKGfN@gee@QYu1|jYnhf~EV+!yEa94c`@?;}Pf3m?j9kz;dkXDY1?&;oLbImPvY zGMl!CV?$bJuMcJLp_7B(qWG9QMt*jO#=NrgTq`gSS=l%b(H`_L4v(M_1`GcwAF!vd z6}4h7%OE$#ds+qo;Q5)s+^Qhjb$|k#)j)VlAqKo$A5mF@xR7>s8)+=(!4hfA*WYU=Dys`p;*Qn?q5t1=5HmvN7D0>?vykj z={u5sEa`Gd!;)f?hrJi&Gda1C2P~yx%giG|c}<|LeDH7i`D}w%$bKRHLVUavivbp~ z6L=TkEQEJ1-pAdHIEdk_@*JZHw>|<3Xr?-+@iE8W8K~`Qi>H%2yEZ2J;%TDUv{>-* zp0JUA0GLA$80tJLJb)EhS&W~J^n<&S)$62eV^;R8kkt?1N>;CvvQ1f8^ua;_aR^ni zdYzQ@j+M3M=&zNeZ2ef-k{q%nN*0@%31$R}Fal0~p$fa^sK7~?0)ydv+%-)Uc%MTzazJjxj!=mYHeGDc7ZbGV@Y{`11Hs?%?W zjrYTf16m=z&!L2OJLb>p$3CyYGXPm+m&_tly~pEi^7(Ks0OYq@Nn3R>afX21;qi8} zsbOkwZCdWDZ>^Im1#DN{VEd=9$MrdD+n3^0bh
ElnO@U3>jQ|E!I2S|bx;~cRbTF#e>up*?mAF5>J95?c(G>fsC5q-FW@pi`9j3)ed5y04+U`D`< I!1Rp3-%t9RivR!s literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch04/obj/x86/Debug/Ch04.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch04/obj/x86/Debug/Ch04.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..3a45e7d --- /dev/null +++ b/9781430248606_sourcecode/Ch04/obj/x86/Debug/Ch04.csproj.FileListAbsolute.txt @@ -0,0 +1,5 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch04\bin\Debug\Ch04.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch04\bin\Debug\Ch04.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch04\bin\Debug\Ch04.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch04\obj\x86\Debug\Ch04.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch04\obj\x86\Debug\Ch04.pdb diff --git a/9781430248606_sourcecode/Ch04/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch04/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..e8658f59c22b1b6460ecf9a0c83bf4d62902de69 GIT binary patch literal 6630 zcmeHMdruoj5VyfxFoYJVj!LNe~Ir_)9XKS@33Im#1s-KCxq#7XKqUd3V7TiPn~ z6Y8#4Qkm*vb-9{O+lwiZA!BHA5Iyw z0v(<*^bY`Idw{LW|BRs8DqPF;1~ zt`FJGDxO^9UmT@7;HOkqrkQ7gT8axs<#fYVM3g8I*6|Ke$8x%Mg)!L>yb2LQuVw_T zF{woBd_Wu=Qxrou2Z}BRFe;4PG7COSJj!z#YLYDkT@M zVfIXcPmprGA=EBsAO%K6U8{_l;myi69Y z#ijIWCQDN*s|U&3=5a@-I*2$Ngd5g7t}YrKrsyEDDA-MdP=3dAD&!3`Owd8(&@e&6 zdT|~gxQ&kjnTW^maSRDyfk^xw5cnBK5=SzDWD>}Pb{}X&n*y@YF81KiS_#l`lL%@C z2-Y;-Z>oPoK7*%Gu&+IUhY4V%j7%z% zUX6baeVcQbOOVGT3s7%{ zsy@K3g8CMofCYCD7V<<914)Uh^DCKe^XZ_x@@-;zJp&7SgYXKK>!5sp5Xyh4JAQng zgMp(#8Fx(()C{)wT~74F-|-VK08j_mcgC@$vYVaO(A20x=)fAGH@iwnIH}69^@J-7n!GR)Cse z6k(;0H7`ygia7HcH-W$tTLQr+>e9Xf@~EA=v548xz6R+``wepyR`Uu1YNoJhI@&kD zpKF(IuF$nQ+P5J8p}oi4?R!M2frPu>ngJ?*4mE`e#3DA}(*y!)Z1?=U!KA`A U`q%LI`>%gC43EE{TzoM3FG#DFo&W#< literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch04/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/9781430248606_sourcecode/Ch04/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch04/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/9781430248606_sourcecode/Ch04/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch04/obj/x86/Release/Ch04.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch04/obj/x86/Release/Ch04.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..09f2580 --- /dev/null +++ b/9781430248606_sourcecode/Ch04/obj/x86/Release/Ch04.csproj.FileListAbsolute.txt @@ -0,0 +1,6 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch04\bin\Release\Ch04.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch04\bin\Release\Ch04.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch04\bin\Release\Ch04.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch04\obj\x86\Release\ResolveAssemblyReference.cache +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch04\obj\x86\Release\Ch04.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch04\obj\x86\Release\Ch04.pdb diff --git a/9781430248606_sourcecode/Ch04/obj/x86/Release/Ch04.exe b/9781430248606_sourcecode/Ch04/obj/x86/Release/Ch04.exe new file mode 100644 index 0000000000000000000000000000000000000000..7754fb316e0b5a01685a5bd137868a50e6ca5f6d GIT binary patch literal 5120 zcmeHKU2Ggz6+Sb&-mIO(a^eu$CNwweM9NP+-nAWL2Rr`RwbLzj?0PqDS}c;;+3WSx zvoqWIv3IEojz|$j6-p7mZxmIPDqi|fN+2Mlswyv3AS5K7ph7}IeF+jsNEM=d_s;Hm z{R4zo%3aTQ&$;KEd(S!d*K<$ZrU(&5@qPFq(H+#HOi29qunBSJi63{;8}09&yray% zdosUjdaU9)C08#qL$__mX9dpOz-Fe+GV?iBc8Xj(c(CJCz3YW(qFE(EzdZl@`NnAP zk*e%h;zS*2K_$wivjB!~0-peeN)7!6CH)sQZQ?__C=r@?o~TRyZPj%)RG~keA<7AQ z0$sM%8(XUzLbLQ1o>eUrU)FnrdMs$wXdJgl{Uf(c6sZm3<<2L`pas zsQWM7$tWeE4%H0JyVub051y6mCGMf zNlYDmaC(4_%6RDrSh0je`+j^P{hj!PXN^xxbm(b})~JZ-e1*OSyesjy68|Q#OA+m7 zC1xaEm-sEEs>JB~5`QFHel4+Gy@&P-YC;{SEL@CHRlTOh=-U$CRK-|70g4iO5az6l zy6G7F7Mz0ES)Gf}O{I&@*Eu2YqD%C+)Qr&r6aBnIu8ikJ$$ja84d|%!^^l|IkP(%> z(;|z~%aZ#hWDjA_zS^RRnCje3*v0A1I`=%d4!Rq1as)BQ3cVolt3Z`*|JU>(+CZca zN<1m?ti+VW5s8x$vl1T%o~9=ytxGf|J|nRPJO__9u=Za9cG1i9wt4|8LC_jjLmJpk zbHHN~dnBHh?E^T0H2Rcm`Lx6w)`ms~eFL~g-vfH|KJZ!k3-F8dcN(SWW@8=^ye!9n z*lf+B&}W)7jm|m6z~YxEy_y`DUlyM#N2t;=!XQ63Y({TW=)e8XuCp>C2f^^)y)n01db zybzR1`Zn*vHuQw`gaCF7gm^0O$88M|4RTf%xusVnpiqWri* zhnp*rz4aPn{mE26;aZ?m!$T=!_>)6=FHf%Y_YMwR815ZO4UY5Ahm+VXU@!d*YzBSK%!Ie}~NG!~x}PFMAE#p2$w$l9_~ zczU@yJhY6Z#&wU&My*mT;7+f+pqZd{m&SW&OL9H!xYJcGk287Hajq3D@ut9w z`82T!N&RntirY%2X7d5m!{KYXCA9Fxu<$S1SNCWa#+xlYgk-oL#I60^38LF#LDWk! zP4s>!mMync>;+oF4S5|nO^cwiG*4H+XMr=IMfqv;-ao?ouwfk5<5C*liw#M=iNyO( zL9aSqF*Dfe7LJH44vZBX5~7?Uahv8L6~~ANxsD^mgw&RDqSvE;MyCpV@}U(TKD&GR zh15ynzzKhYxc#shX;8kU8u}TG?qOeuek$9>N#oc`LR*w1_M6i5b_q7FJoXwsrSLvT zHa{^&JM=|VzSOl5gN3~5@<1fKKf=B>NUQinc@!^Kg=WE(q;?t+SEwdED?#6f&h9ow zuMxwqALFNhgg1&9d%kWbvLnWB#49*)DDUmVBQiG&uoVY(fV}uEUT@jJ95ITVY}ehH znVoqVmNt{fod+Mvm=OyRGOUK}8Qp1j@9xh=$E#(Ft%vvVSOSM@f^pk$intWV5?Avx zy~7FS$rqF5*nBKe<6dI?(!q{Vz5c*q=)m^I5`k-9^o&)!CA{9UX}FH(toXf#Q@*Hs zWox?-%^S+>aWw(x7)JQBx!g4sB`#}ae3$x6jC4SDrydZm)+ z3w!Y0!1J^AigTa-^e3bp#`d@o;4-e&d9=9vnE-zB;(}|g;{{OS-hK8u(CC$+Z1sa9 z*9gR8ZkDfei&+B461tbQ*PS))CRkuj8hAn>jVrq4@p@3QlfFH?X}I3E&G*s1W)h$< e+SiyNFk)qW1PTlPXP%J%D}Myy{eOttGVo8_+%p6K literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch04/obj/x86/Release/Ch04.pdb b/9781430248606_sourcecode/Ch04/obj/x86/Release/Ch04.pdb new file mode 100644 index 0000000000000000000000000000000000000000..7602597c86f13d7a802ce12fa8bcb80b835f391e GIT binary patch literal 13824 zcmeHNYi!e16hG~1*%MYWt>7-ZPTHrOP{=(;UD)(lcf&@|b)_CML^+Szsp#>7gD z9|R*G_+r$=Cw`C*CW7%rTnv(kF`x+H15rc7L_hG-511hH{OGYMwPj&U5o##E%`1>lo*8H665tyv;-+1tqnHM&FnL4+5 zcjelO6K_s+zs>%Qjlg>OsOVU(`BbbCxPI~aMV##_@v(kos3nou7HZous3p_>`|3R2 zx==7Nl#FQpL{t;ZwjJSt!I+i``L}u+LK~Bb$CKd!S0qK$zcSPVZB1xLbnTSTjzAks zO=(AZ)=%F%*p2!CwNf2Z8&3+@z}XP<17Nd`j8rmZJ9aDCN83CjxJ2cWg7Dh2 z;{Ykz3=Z|6&Q+*Q7PeUy652qYjcu$FhV(wc7NC@6+L;PgU?_&Vn`z?;>n&o`V`LG2 z!xrq$MS+3a%2ZJeDOue&%c##r*(xD>|ER3q$J};jOS^yQZHP67_Ry}Av4OFJv72!R z;~vKGfN@gee@QYu1|jYnhf~EV+!yEa94c`@?;}Pf3m?j9kz;dkXDY1?&;oLbImPvY zGMl!CV?$bJuMcJLp_7B(qWG9QMt*jO#=NrgTq`gSS=l%b(H`_L4v(M_1`GcwAF!vd z6}4h7%OE$#ds+qo;Q5)s+^Qhjb$|k#)j)VlAqKo$A5mF@xR7>s8)+=(!4hfA*WYU=Dys`p;*Qn?q5t1=5HmvN7D0>?vykj z={u5sEa`Gd!;)f?hrJi&Gda1C2P~yx%giG|c}<|LeDH7i`D}w%$bKRHLVUavivbp~ z6L=TkEQEJ1-pAdHIEdk_@*JZHw>|<3Xr?-+@iE8W8K~`Qi>H%2yEZ2J;%TDUv{>-* zp0JUA0GLA$80tJLJb)EhS&W~J^n<&S)$62eV^;R8kkt?1N>;CvvQ1f8^ua;_aR^ni zdYzQ@j+M3M=&zNeZ2ef-k{q%nN*0@%31$R}Fal0~p$fa^sK7~?0)ydv+%-)Uc%MTzazJjxj!=mYHeGDc7ZbGV@Y{`11Hs?%?W zjrYTf16m=z&!L2OJLb>p$3CyYGXPm+m&_tly~pEi^7(Ks0OYq@Nn3R>afX21;qi8} zsbOkwZCdWDZ>^Im1#DN{VEd=9$MrdD+n3^0bhElnO@U3>jQ|E!I2S|bx;~cRbTF#e>up*?mAF5>J95?c(G>fsC5q-FW@pi`9j3)ed5y04+U`D`< I!1Rp3-%t9RivR!s literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch04/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch04/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..0bf885f55616686b0111656176286456e810bb1d GIT binary patch literal 5705 zcmeHLdruoj5VyfxFoYJ7X-mdERz-Fe;I&TlsskHupDVxwPbcZZO;uel?I5>;*O za1}7Gqyv`=D<|r8;cw;(X>$jp;=*6cW~}g&Hgkce0|{$B1X?mLZEgn@k2}9Wt1OPd zU#n#1tBcj8YBuXGX4pI%A(hMT(X<|L&n11Ez6L28ZzXFqKw3p6H~mJS)if@C$UIM+ zfcsJ@s8_sJp{cV+EefI z>qR_zXZ+$S(?dU%zG7ycOK`N19MojP)l8OvN#}5z=|eT%kfMqKAt$CJ)VR{JbG0i}d|iNSfHuXdJEzhYQzd(c(lEX;Gk_qaL5W$@`mb`<6 zhDYg7lE@emV;o7$xQk@{wAiULt0hDkCrpAJApzTZQz%CTHhqj+XS!RRJC(T5JToRx z&e5w?dtHblyU;{*pmSf%WwLX2Nd(e?oNysz7MiTyz?yF74l@h3sQhj>mtWXL@PH|> z^PsRKm$8l%K?(0T!U#pEf&?GykL57u5R#ve^`9b{xolt;3X!44B=RSTZ$=)N3q}e@ z6Cr;Jd&8*T_zXK^G-S$V@bR7_ zCbFCm6d4at0?V!1SYK-hfXomNVMsb2o1JhYTDb67B8M(NAe)>xpJwGshfFp?+aIEu z-+HR1TUbN!GbrBfsrabkO9(a0q6WVo8uCmti%1FdIcyDee$g+lLYatTsKC8C8SGKHF!u3WR97SWivJ0t z`^W8bIdc9EF?d(`Sj-rsU?xVtwxnlv$?x-CUej_zoTr%1MXx#Ok? zAcms9#7<%ZuT|oN6+;ARVyD|u1RklSLI8;!;~A0%r@3oybk2;gkvnzzGxs%JZEQ%q zK*G1<%=iY!XHLu4-(R%OjBk + + + Debug + x86 + 8.0.30703 + 2.0 + {F41576AF-3F4C-4BE0-8A8C-42C5E6A2B8B4} + Exe + Properties + Ch05 + Ch05 + v4.5 + + + 512 + + + x86 + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + false + + + x86 + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + false + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch05/Listing 5-1.cs b/9781430248606_sourcecode/Ch05/Listing 5-1.cs new file mode 100644 index 0000000..20b4254 --- /dev/null +++ b/9781430248606_sourcecode/Ch05/Listing 5-1.cs @@ -0,0 +1,41 @@ +//namespace Ch05 +//{ +// public class Book +// { +// private string name; /* name field to define Book*/ +// private int publishedYear; /* publishedYear field to define Book*/ +// private string author; /* author field to define Book*/ + +// public Book() +// { +// name = default(string); +// publishedYear = default(int); +// author = default(string); +// } + +// public Book(string nameOfTheBook, int publishedYearOfTheBook, string authorOfTheBook) +// { +// name = nameOfTheBook; +// publishedYear = publishedYearOfTheBook; +// author = authorOfTheBook; +// } + +// /* A method to get the value of name field */ +// public string GetName() { return name; } + +// /* A method to set the value of name field */ +// public void SetName(string nameOfTheBook) { name = nameOfTheBook; } + +// /* A method to get the value of publishedYear field */ +// public int GetPublishedYear() { return publishedYear; } + +// /* A method to set the value of publishedYear field */ +// public void SetPublishedYear(int publishedYearOfTheBook) { publishedYear = publishedYearOfTheBook; } + +// /* A method to get the value of author field */ +// public string GetAuthor() { return author; } + +// /* A method to set the value of author field */ +// public void SetAuthor(string authorOfTheBook) { author = authorOfTheBook; } +// } +//} diff --git a/9781430248606_sourcecode/Ch05/Listing 5-11.cs b/9781430248606_sourcecode/Ch05/Listing 5-11.cs new file mode 100644 index 0000000..88f3ca3 --- /dev/null +++ b/9781430248606_sourcecode/Ch05/Listing 5-11.cs @@ -0,0 +1,33 @@ +using System; + +namespace Ch05 +{ + class Program + { + static void Main(string[] args) + { + var anObjectOfAnonymousType = new /* Anonymous type definition*/ + { + Name = "Expert C# 5.0: with the .NET 4.5 Framework", /* a string type */ + Language = "C#", /* a string type */ + PublishedOn = 2012, /* a int type */ + Description = new DescriptionAboutBook("This book is about C#") /* a DescriptionAboutBook + * type */ + }; + + Console.WriteLine("{0}\n{1}\n{2}\n{3}", + anObjectOfAnonymousType.Name, + anObjectOfAnonymousType.Language, + anObjectOfAnonymousType.PublishedOn, + anObjectOfAnonymousType.Description.Description); + } + } + public class DescriptionAboutBook + { + public DescriptionAboutBook(string data) + { + Description = data; + } + public string Description { get; set; } + } +} diff --git a/9781430248606_sourcecode/Ch05/Listing 5-2.cs b/9781430248606_sourcecode/Ch05/Listing 5-2.cs new file mode 100644 index 0000000..87a7b58 --- /dev/null +++ b/9781430248606_sourcecode/Ch05/Listing 5-2.cs @@ -0,0 +1,41 @@ +//namespace Ch05 +//{ +// public class Book +// { +// private string name; +// private int publishedYear; +// private string author; + +// public Book() +// { +// name = default(string); +// publishedYear = default(int); +// author = default(string); +// } + +// public Book(string nameOfTheBook, int publishedYearOfTheBook, string authorOfTheBook) +// { +// name = nameOfTheBook; +// publishedYear = publishedYearOfTheBook; +// author = authorOfTheBook; +// } + +// public string Name /* Name property */ +// { +// get { return name; } +// set { name = value; } +// } + +// public int PublishedYear /* PublishedYear property */ +// { +// get { return publishedYear; } +// set { publishedYear = value; } +// } + +// public string Author /* Author property */ +// { +// get { return author; } +// set { author = value; } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch05/Listing 5-5.cs b/9781430248606_sourcecode/Ch05/Listing 5-5.cs new file mode 100644 index 0000000..fc1c376 --- /dev/null +++ b/9781430248606_sourcecode/Ch05/Listing 5-5.cs @@ -0,0 +1,30 @@ +//namespace Ch05 +//{ +// public class Book +// { +// /* Assigning default value to the Property */ +// public Book() +// { +// Name = default(string); +// PublishedYear = default(int); +// Author = default(string); +// } + +// /* Assigning value to the Property */ +// public Book(string nameOfTheBook, int publishedYearOfTheBook, string authorOfTheBook) +// { +// Name = nameOfTheBook; +// PublishedYear = publishedYearOfTheBook; +// Author = authorOfTheBook; +// } + +// /* Automatic property declaration for the Name */ +// public string Name { get; set; } + +// /* Automatic property declaration for the PublishedYear */ +// public int PublishedYear { get; set; } + +// /* Automatic property declaration for the Author */ +// public string Author { get; set; } +// } +//} diff --git a/9781430248606_sourcecode/Ch05/Listing 5-8.cs b/9781430248606_sourcecode/Ch05/Listing 5-8.cs new file mode 100644 index 0000000..bbf22e7 --- /dev/null +++ b/9781430248606_sourcecode/Ch05/Listing 5-8.cs @@ -0,0 +1,28 @@ +//using System; + +//namespace Ch05 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// var person = new Person /* type of Person */ +// { +// Name = "A Person" +// }; +// var personAge = 30; /* type of int */ +// var authorOf = "Expert C# 5.0: with the .NET 4.5 Framework"; /* type of string */ + +// Console.WriteLine("Name:{0}\nAge: {1}\nBook: {2}", person.Name, personAge, authorOf); +// } +// } + +// public class Person +// { +// public string Name +// { +// get; +// set; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch05/Program.cs b/9781430248606_sourcecode/Ch05/Program.cs new file mode 100644 index 0000000..86672db --- /dev/null +++ b/9781430248606_sourcecode/Ch05/Program.cs @@ -0,0 +1,32 @@ +//using System; + +//namespace Ch05 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// var anObjectOfAnonymousType = new +// { +// Name = "Expert C# 5.0: with the .NET 4.5 Framework", +// Language = "C#", +// PublishedOn = 2012, +// Description = new DescriptionAboutBook("This book is about C#") +// }; + +// Console.WriteLine("{0}\n{1}\n{2}\n{3}", +// anObjectOfAnonymousType.Name, +// anObjectOfAnonymousType.Language, +// anObjectOfAnonymousType.PublishedOn, +// anObjectOfAnonymousType.Description.Description); +// } +// } +// public class DescriptionAboutBook +// { +// public DescriptionAboutBook(string data) +// { +// Description = data; +// } +// public string Description { get; set; } +// } +//} \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch05/Properties/AssemblyInfo.cs b/9781430248606_sourcecode/Ch05/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..a7d7ca3 --- /dev/null +++ b/9781430248606_sourcecode/Ch05/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Ch05")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Ch05")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("9f6def6c-6394-44ae-acd3-3ced50515ea8")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/9781430248606_sourcecode/Ch05/app.config b/9781430248606_sourcecode/Ch05/app.config new file mode 100644 index 0000000..c5e1dae --- /dev/null +++ b/9781430248606_sourcecode/Ch05/app.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch05/bin/Debug/Ch05.vshost.exe b/9781430248606_sourcecode/Ch05/bin/Debug/Ch05.vshost.exe new file mode 100644 index 0000000000000000000000000000000000000000..bb84a51ac4f20534146c09f2fd9c928d15a903b2 GIT binary patch literal 11600 zcmeG?2~<)?tG75|5OPOMcC{DsnWb(K|p-9Gz zCYX{WA(Jm;dIfQqiJ};SrLL}G(n&hl8zFy;j>apOj_;bS1<^27Oc^0Hz(7W(Czb%1 z@VUW90w!d%4!)s8@lWO`4L-o%@Fz33`3PxI|9bMyD%lrO3DBh`b_0^65V}%-gn|b^ zWm*RtcF<41tL^XP%x>1H-pWw-?KO@iBWB8={z?S^v{7pXzI!Jo%+8WXB|Jbhzz%$;+6FHiiU_~N3I z3EN^9UtHuj{7z%|8vGH<%)(m1Ea7^jMXH#Y>ya2$DiaMPF|c+I&NvSYVbqF9*~#r#ILj8dWjm251tb7C6J%*T7omHQ z|3QZ`M<(G55b{zd>0OBcT-q z$5D_+!Bh&aq+kUFn<&Vjy~Gre83lc5nD5M>aGT=)?fZgOM>nV`Kqv zI0bDf=!~2J||60WgZ0+&DGHhBHk2136`;HfS!lVrq~L;Qp?LLw4#2#K5zlOj)1BCy1d77#r{JpDO<77O@Xp{xhn!4xZ$h!p@= zFfDSIN{Pg1K}r~3)_Zst+KZ6#Bz!U1wTDViV=OmGAajRFq+hp^({qI>UpIiLVv=~h zxay+kDH5kh_;K;yXzG;G*Tj7I0^&~_{e-b1Ng|izo-6pOSGO>vq9h3^M-Ep;2n2i? z;VA;Ob9u6_h6EBx&>#pUI*0gkg>gyTxL$JaT8kGU;HGf+ao-Tzcp`=5x@Rq2jC5KA zDL81CbnCa%R49SU_|be|v6omoM|<(PaYE7-c~ay>L?^|?aX&MN4jh;n*m;M|z$BDt zLV?wpRH>I1yLLe*EkY6~5>Aj35>FW2!};IZ6RZg`l4U+2WpPr3Jg{aVFJ1yBKdala z!{Q|bH-_8;-f}`H`;N<(`ErFZ0s_H?nELq^^AiFst^h{IAPxchk}HJW2r40D)L?1| zN5+-NKyKu|BH5O9=>_$oO%{WM1RNkt$|LX>+U#yGW4SL{W#Dq<^-?pWTs_=s z+sMi))7<${{lWc@(;pS&e4xt(nf|K_4fiC?yA3+_%vvY*l!4@4iv}=BM|c$3*(8Ejv=a+B_=Ss*JEQXuIqpixQ3a_4(W> zyEKm#xtQrM)b=Fwn2Ghv>;fV#EMt&fQn_Nx)Omd`sf+@qw7IY%8d=~wU}z94&^xT# z?O1hMy$gBFV<=2Rx4X%UFBOAX2ZDn_3e*V(5c0klQtL7p%59=S80yz;986D8eMaINL%0wc8G%|*e$MEHmK74Q% z!Aa2qJ`Z*(ODar2$dFuS7_I+z60R6Fg7-`wLHR_mTT!wUQ^u&61Y`_zfv7uESG-PI zL=b$z5K9F^02Rvd;_$Xby>8#V-GB3vXN;}hekVw2b}%EC!sUQGG$K1h+L_tfM2e!P zOCtHUjw8EKEOAUULMMT4SGq-(nO(Kd^R74+p{XEA@0kR39#JP2L9k*3WE=-K98<(} zqe}k)-;w}E#jg-2r+wZ^?F0lS_7$G&N8TMKx*>Foia|&WS+)ZhjyMosg(Ghi3MD_V zlt8Ha0ra7)2BA8})Ao*tk&JOg@{U+nBp*Xj>4k4odB9b z6pKVuFB2+W3WHWIV5QK`MKb6of?7waV3?3D4|tM6FFxSozD0@ZgTuNz{_IdRDFbAO z)M2bA&`X3r0!GVV7PvbAj0da~>bA%RB0vJogpW-A5a@S}5mS7nfE2jYc(OeJxZnXV z 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 + + diff --git a/9781430248606_sourcecode/Ch05/bin/Debug/Ch05.vshost.exe.manifest b/9781430248606_sourcecode/Ch05/bin/Debug/Ch05.vshost.exe.manifest new file mode 100644 index 0000000..061c9ca --- /dev/null +++ b/9781430248606_sourcecode/Ch05/bin/Debug/Ch05.vshost.exe.manifest @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/9781430248606_sourcecode/Ch05/bin/Release/Ch05.exe b/9781430248606_sourcecode/Ch05/bin/Release/Ch05.exe new file mode 100644 index 0000000000000000000000000000000000000000..62f01de0ff7a18cc33123a735a4ba266a836c2f8 GIT binary patch literal 4608 zcmeHKU2I&%6+U;pcASK`A<*#C7AEVEf`iw)_QthS8}EA84omICcsB;3mEybi&aN-M zf7~ClOQp(HTO=MpK~<$zRjWMkf`kx=NFb`J5^vB_iI+;PD&V0HRr^5Ir>YO7-^{(c zUjKyBhd$A9=9@X^%sF$;nb|Wp%U7;Z9}y+dKmC;GEsUb&C4M$+Lp*fv+e38Y@cXCU zQkLF7RoyUr=6X)kQ!S>cw(SJ0&Y2h5%&=MMQiWNL&eO+^9XTDFURfYoQu^q(XFs~s z+3jOWC`Xk+BK(sb!>eBhF!VgS0EQtE`Hh+MUyQVk4!&r8l>Y(Iartj&jLB#T)nHd{ zoQKK&nAtn56Ws#(k7tO!+ROh>bJlfTt{epYaF0$p;H?1kjY9y)WSp_zpk!l2>uJyT zG*HsFJSGF^N6>p(9tlZ%+;p%|_)6>O!WKgBZF!>kURunriM*l--xAbMEk>kc4{;}u z4zb&R)lT#!A0HX%OJ))$flrKpzA|!8;{IFV^~gYXM)Q?N<`q(;ZQ=7)E}cnFWG1rH zg4ItZFpn69zeDs2#vhA$CGZTp>5CO5I47>h@Z}0EVJ<=)zHqr*!dMeBm>!-tojPdI zpsrl_GSOi{{PVsEItd1*C(uQ#B2aM@@RNqng)H*!NIVYEGA&}=vlIY-Ch={FznA!T ziANP7JtMIov8`ND2IzT-Kb4#t691}v0RA0`WMYoa!o2~yk~p6jpl5*CJl<90NI`VB z(HUeV%Ghzr(3GV5X@!Zk&r%haLZQns^*E?LT92t3sD9!Rb>}*)9U@CoFH(bU2j%q0 zL{=5r1SZJ(%(;VXt<&9fm&8*NACQ=pI4!Xtu`KaX;Jx&OoU0NIiBCyv15eX)z!7>8 zcpRrCFil5k40sz&1HU41SmIg9pP)JLzbQH2l31a~z|rWtz)gAq=+p0j-=>d%-=jZM za=VjZgecn-Fd5IqpwMiGnpt-A(BuzMaU*js&0Cx*fokijrx#UI3r#g}Jjhfx;NI17 zT8RpvTuqj*Ii6|MsnYfXZqcRslUxg^pzBl#>$Du2l-7j)vTE3*Qk_%}S3FvsUgZrF z%MHh-g70&yZnmpNVDdtMpF%whc$Zz`zUCROSh`9UOkI&Ot~TZYDcDmvDh;T!ed zcrS#8zTfg1_xuARUo=dSdP*{RV1GWi+H~H(@t*)u}aBMo3`TzhUQa=*TZI0 z-Q``xgC*P;1h8i##N)yruQxz2Z_Gf zCHw2eh4M@5^VeT--e`UBqj!bIBj;=Ljx}s zGDV`lL}JOgmdIgTqY7OGF3>7wWqh$+1YHI$Mqh9A%j75jitKijqj4^_D=K?O60@iz zd21-T9_$$S=HRet<4ttrlG7x#s*tMS`jD%5;|)md*u-nezrm;ip8~8hz;7O4={Iss z2CsJXmqU@q4})^@4e#t+!tOrqsIcSi+NVexSdZT)S_XGt>F%)x9S>SNK4tN~Wx8GL zaTx1GRDoP8o){B(Q}MQQ*z4F%gK9~R_!c|?oh49Bxw?pmU203un(#$@x9;aLdYKsh z#<71ENHin&z7*?;?1;TP@e1nZK0GLMvjSa*bPAD|pvUVSzp)Ks6gkB@tsC6syWtq)wj}H*%Y%> z+h}k<=#)&k8%#0QHCEO+UeBPt%Og>GQ_MykolPyb3$AM#ntWW+s_Ul4A`5{R`a#)l zIG@v>@s!lV-agkt4|~QmI39m0gr8hr@r*6JaZT=jPOB3gs|;<&4oaXFiqDlLzQs*u z3Y<-;e%an~Ho2E#p;6HAk$^NdRMY2iP}0cQ0p4_6AKT^o%vd)GSTHlzIUx|@W_ + + diff --git a/9781430248606_sourcecode/Ch05/bin/Release/Ch05.pdb b/9781430248606_sourcecode/Ch05/bin/Release/Ch05.pdb new file mode 100644 index 0000000000000000000000000000000000000000..34fa46501a22028503e216dcf590f7c4d753fe2b GIT binary patch literal 13824 zcmeHNT})g>6rNp>^4~5hDot@!YHHE_;l~m}1iLJ@AW%sVEEPL_pqVR@| z@j)aZO?_yzv1-)^c`Z?i981BmOCe&M9L7iD0RvJZi!=6@`T>GMDGi2O>KeQ2z|h%WW* zX+E*xtZg#DW;$Q9zVeB8_o1JE{KhufEb>K%pMBI8J!_lZ&e)}V-*oRAiI&rm{T=W8 zy7SwojW-Wr+W_i1{$lBcJ)b7eb&nUf7oB-kXwB+kKy(2@Kk@DPC<8s#o1NyKL z);xMdRl)`52O5>>|017`}IZ_s8HqSq>~wrV%Rwp2~KjDLM{Y z;0;@prQ1^0q!mU0edl1?ZE)K!eM6^+`ZW(}J}w@NM3Amwxw$8se>rjNk?(yUZY{8W z@YeBO=>4pf%4j^0F??Wei17ikk{eae7ed7fr4;2X5BKnT0>gdKIsQvMmfKmexGyig z4i|SM+5ul6I_tPrm1yi;nHp_g> z>9!@@_U?IG(Z;3ymPx;<&4`6rSz38V zEb#=nTBO^njijJMpFVJ{aX^C%?NQ?m>0ImLaiRJ_v=zN3D7_zO9E}xF4=HR9NE_gM zl=xkl&nAI)`icVQ#TE*xif{~(1SWS#IU(h!lzu5+m$F{U_oTGgDX|P$^7*h`#)2{X zGNowSYSL=gznZaUQa3$Id@iga=^}0-ZYSPLY|`36ppupHwIB05W1dcbb&ofZGDds4 z^jLys;4-$Amt#(~FtGtBXZNJ(T=%;`?giU8w-t-HvK2aMTeDz$hTDq8SlJ4lw5?sR zMH{S4EJDgw=%g(sqm?C0{U(_RWGw=Axp!JBK(#l(Ly%8)So_x5`j_?3Kl=Eo0ylr} zr#1Vz5~e>{O1(ToeT@zHy~HmOD=MeNZ9H>fM(M=Yq4e)Vssyr-)yY9~ka9>)e*94d zNd|E7j> zS3F~&h4|*?U<=gL8%sOoGCvi&8e1HYW$q{KbdB1f&JJZLq>+RG1QqaLL|T=aat$G{ z-1q-!YNwN4&If#nsLq^;(4dxN&ZH4`_G_VtX7t7N@PJT6V{|0!%>2Z4>0@7B$Mw2Q zJH(|;Eq`z^Kppbo!p@bSXpzK&dnYjtd+~t7ewaAxXMKuM(ngXvv)V!!HIN*TFf~zr zit_s;ZzFl0bU0T_kxdIR_UZWlp__>TDdw=7hyi60F<=Fh1;n(rFgoYr^CjxU+=#B& cL~PRPA%OMVBohG>0TTfe0TTfef%S#JKkPU{=Kufz literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch05/obj/x86/Debug/Ch05.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch05/obj/x86/Debug/Ch05.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..076ab5d --- /dev/null +++ b/9781430248606_sourcecode/Ch05/obj/x86/Debug/Ch05.csproj.FileListAbsolute.txt @@ -0,0 +1,5 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch05\bin\Debug\Ch05.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch05\bin\Debug\Ch05.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch05\bin\Debug\Ch05.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch05\obj\x86\Debug\Ch05.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch05\obj\x86\Debug\Ch05.pdb diff --git a/9781430248606_sourcecode/Ch05/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch05/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..a8967c4408756eb74e97ba429b4b0222b219763a GIT binary patch literal 6630 zcmeHMdruoj5VyfxFoYJg|`T)%mwzDacA!BHA5Iyw z0v(<*^bY`Idw{LW|BRs8DqPF;1~ zt`FJGDxO^9UmT@7;HOkqrkQ7gT8axs<#fYVM3g8I*6|Ke$8x%Mg)!L>yb2LQuVw_T zF{woBd_Wu=Qxrou2Z}BRFe;4PG7COSJj!z#YLYDkT@M zVfIXcPmprGA=EBsAO%K6S&{NEdAd6{Ib z>{5C)vq)1bs|U&3=5a@-I*2$Ngd5g7t}YrKrsyEDDA-MdP=3dAD&!3`Owd8(&@e&6 zdT|~gxQ&kjnTW^maSRDyfk^xw5cnBK5=SzDWD>}Pb{}X&n*y@YF81KiS_#l`lL%@C z2-Y;-Z>znNz%OJ<%{yc$pmpt20Wr${AtP6L!%q*W@Y z3xLV6h;>ZkpQ0brK;|w_wGZZT%31>CGbq;sUv%Wp06*sU_za##!M^qY9wva5GBT-5 zdNuwz{GGt?;#ZqRVl5<8F~fEo?UDaP&uGG50qpY_$eWLg2;hCg@&Ug#2iiz( z%><}e18}eVSl!C3hG;U0v6msSjZDa3?wD0&aY&?&8LI%%D0K>^$aZR4Zfx(8)JtjDNY{Ub9Ksd9F2@cf`-6@jo_1?aAo)8MoMzWA z>%*HkR@**UG#EtQhrReA-%Iun#>eAd!l~D93B-I@f7D(8*$(x@O(2x?b-#p%SOIE= zQG}H~*1R~0DB{d(+ynwoYzYLPs7w0_$fI`d#v*1%`x>M(?KjL-Sj{U4sF}j1>1f{o zf397=xkA_KXy1bThxQ(GxAOryy$RI@_*O6F-%1k(*t{u|%SNiBy#gI!VB+sU&s4ie znh4gg3fR$-!1_o~SYd7tA}0{}BKX(72NLdjYX+$NIn)#?5R2G=PZJ2JvEB3Y29pZg U=wHL*@4x=pFg*T(a`D0Bzh?-Rp#T5? literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch05/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/9781430248606_sourcecode/Ch05/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch05/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/9781430248606_sourcecode/Ch05/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch05/obj/x86/Release/Ch05.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch05/obj/x86/Release/Ch05.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..78eeaa9 --- /dev/null +++ b/9781430248606_sourcecode/Ch05/obj/x86/Release/Ch05.csproj.FileListAbsolute.txt @@ -0,0 +1,6 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch05\bin\Release\Ch05.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch05\bin\Release\Ch05.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch05\bin\Release\Ch05.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch05\obj\x86\Release\ResolveAssemblyReference.cache +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch05\obj\x86\Release\Ch05.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch05\obj\x86\Release\Ch05.pdb diff --git a/9781430248606_sourcecode/Ch05/obj/x86/Release/Ch05.exe b/9781430248606_sourcecode/Ch05/obj/x86/Release/Ch05.exe new file mode 100644 index 0000000000000000000000000000000000000000..62f01de0ff7a18cc33123a735a4ba266a836c2f8 GIT binary patch literal 4608 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 literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch05/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch05/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..aba1150391cfc2204df7c23da5489f76498b3ef6 GIT binary patch literal 5705 zcmeHLdruoj5VyfxFoYJ7X-mdERz-Fe;I&TlsskHupDVxwPbcZZO;uel?I5>;*O za1}7Gqyv`=D<|r8;cw;(X>$jp;=*6cW~}g&Hgkce0|{$B1X?mLZEgn@k2}9Wt1OPd zU#n#1tBcj8YBuXGX4pI%A(hMT(X<|L&n11Ez6L28ZzXFqKw3p6H~mJS)if@C$UIM+ zfcsJ@s8_sJp{cV+EefI z>qR_zXZ+$S(?dU%zG7ycOK`N19MojP)l8OvN#}5z=|eT%kfMqKAt$CJ)VR{JbG0i}d|iNSfHuXdJEzhYQzd(c(lEX;Gk_qaL5W$@`mb`<6 zhDYg7lE@emV;o7$xQk@{wAiULt0hDkCrpAJApzTZQz%CTHhqj+XS!RRJC(T5JToRx z&e5w?dtHblyU;{*pmSf%WwLX2Nd(e?oNysz7MiTyz?yF74l|3ksQhj>mtWXL@PH|> z^PsRKm$8l%K?(0T!U#pEf&?GykL57u5R#ve^`9b{xolt;3X!44B=RSTZ$=)N3q}e@ z6Cr;Jd&8*T_zXK^G-S$V@bR7_ zCbFCm6d4at0?V!1SYK-hfXomNVMsb2o1JhYTDb67B8M(NAe)>xpJwGshfFp?+aIEu z-+HR1TUbN!GbrBfsrabkO9(a0q6WVo8uCmti%1FdIcyDee$g+lLYatTsKC8C8SGKHF!u3WR97SWivJ0t z`^W8bIdc9EF?d(`Sj-rsU?xVtwxnlv$?x-CUej_zoTr%1MXx#Ok? zAcms9#7<%ZuT|oN6+;ARVyD|u1RklSLI8;!;~A0%r@3oybk2;gkvnzzGxs%JZEQ%q zK*G1<%=iY!XHLu4-(R%OjBk + + + Debug + x86 + 8.0.30703 + 2.0 + {1ABE6AC4-49BD-425E-8C55-C31DC9709611} + Exe + Properties + Ch06 + Ch06 + v4.5 + + + 512 + + + x86 + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + false + + + x86 + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + false + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch06/Listing 6-1.cs b/9781430248606_sourcecode/Ch06/Listing 6-1.cs new file mode 100644 index 0000000..7c28dc0 --- /dev/null +++ b/9781430248606_sourcecode/Ch06/Listing 6-1.cs @@ -0,0 +1,24 @@ +//namespace Ch06 +//{ +// class Program +// { +// public enum Planets +// { +// Sun = 0, /* Otherwise compiler will assign default value */ +// Mercury, /* C# compiler will assign 1 */ +// Venus, /* C# compiler will assign 2 */ +// Earth, /* C# compiler will assign 3 */ +// Mars, /* C# compiler will assign 4 */ +// Jupiter, /* C# compiler will assign 5 */ +// Saturn, /* C# compiler will assign 6 */ +// Uranus, /* C# compiler will assign 7 */ +// Neptune /* C# compiler will assign 8 */ +// } + +// static void Main(string[] args) +// { +// Planets planets = new Planets(); +// planets = Planets.Earth; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch06/Listing 6-5.cs b/9781430248606_sourcecode/Ch06/Listing 6-5.cs new file mode 100644 index 0000000..5ea6d0f --- /dev/null +++ b/9781430248606_sourcecode/Ch06/Listing 6-5.cs @@ -0,0 +1,26 @@ +//using System; +//using System.Linq; + +//namespace Ch06 +//{ +// class Program +// { +// public enum Planets +// { +// Sun = 0, /* Otherwise compiler will assign default value */ +// Mercury, /* compiler will assign 1 */ +// Venus, /* compiler will assign 2 */ +// Earth, /* compiler will assign 3 */ +// Mars, /* compiler will assign 4 */ +// Jupiter, /* compiler will assign 5 */ +// Saturn, /* compiler will assign 6 */ +// Uranus, /* compiler will assign 7 */ +// Neptune /* compiler will assign 8 */ +// } + +// static void Main(string[] args) +// { +// Enum.GetNames(typeof(Planets)).ToList().ForEach(name => Console.Write(name + "\t")); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch06/Listing 6-6.cs b/9781430248606_sourcecode/Ch06/Listing 6-6.cs new file mode 100644 index 0000000..d27c04b --- /dev/null +++ b/9781430248606_sourcecode/Ch06/Listing 6-6.cs @@ -0,0 +1,27 @@ +//using System; +//using System.Linq; + +//namespace Ch06 +//{ +// class Program +// { +// public enum Planets +// { +// Sun = 0, /* Otherwise compiler will assign default value */ +// Mercury, /* compiler will assign 1 */ +// Venus, /* compiler will assign 2 */ +// Earth, /* compiler will assign 3 */ +// Mars, /* compiler will assign 4 */ +// Jupiter, /* compiler will assign 5 */ +// Saturn, /* compiler will assign 6 */ +// Uranus, /* compiler will assign 7 */ +// Neptune /* compiler will assign 8 */ +// } + +// static void Main(string[] args) +// { +// Enum.GetValues(typeof(Planets)).Cast().ToList().ForEach( +//name => Console.Write(name + "\t")); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch06/Listing 6-7.cs b/9781430248606_sourcecode/Ch06/Listing 6-7.cs new file mode 100644 index 0000000..7ca9640 --- /dev/null +++ b/9781430248606_sourcecode/Ch06/Listing 6-7.cs @@ -0,0 +1,30 @@ +//using System; +//using System.Linq; + +//namespace Ch06 +//{ +// class Program +// { +// public enum Planets +// { +// Sun = 0, /* Otherwise compiler will assign default value */ +// Mercury, /* compiler will assign 1 */ +// Venus, /* compiler will assign 2 */ +// Earth, /* compiler will assign 3 */ +// Mars, /* compiler will assign 4 */ +// Jupiter, /* compiler will assign 5 */ +// Saturn, /* compiler will assign 6 */ +// Uranus, /* compiler will assign 7 */ +// Neptune /* compiler will assign 8 */ +// } + +// static void Main(string[] args) +// { +// string enumItemToFind = "Jupiter"; +// Console.WriteLine( +// "Is {0}, has been defined in the Planets enum? {1}", +// enumItemToFind, +// Enum.IsDefined(typeof(Planets), enumItemToFind)); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch06/Listing 6-8.cs b/9781430248606_sourcecode/Ch06/Listing 6-8.cs new file mode 100644 index 0000000..0cbd3ec --- /dev/null +++ b/9781430248606_sourcecode/Ch06/Listing 6-8.cs @@ -0,0 +1,28 @@ +//using System; +//using System.Linq; + +//namespace Ch06 +//{ +// class Program +// { +// public enum Planets +// { +// Sun = 0, /* Otherwise compiler will assign default value */ +// Mercury, /* compiler will assign 1 */ +// Venus, /* compiler will assign 2 */ +// Earth, /* compiler will assign 3 */ +// Mars, /* compiler will assign 4 */ +// Jupiter, /* compiler will assign 5 */ +// Saturn, /* compiler will assign 6 */ +// Uranus, /* compiler will assign 7 */ +// Neptune /* compiler will assign 8 */ +// } + +// static void Main(string[] args) +// { +// string enumItemToFind = "Jupiter"; +// Planets result; +// bool isParsable = Enum.TryParse(enumItemToFind, true, out result); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch06/Program.cs b/9781430248606_sourcecode/Ch06/Program.cs new file mode 100644 index 0000000..ccd0205 --- /dev/null +++ b/9781430248606_sourcecode/Ch06/Program.cs @@ -0,0 +1,24 @@ +namespace Ch06 +{ + class Program + { + public enum Planets + { + Sun = 0, /* Otherwise compiler will assign default value */ + Mercury, /* C# compiler will assign 1 */ + Venus, /* C# compiler will assign 2 */ + Earth, /* C# compiler will assign 3 */ + Mars, /* C# compiler will assign 4 */ + Jupiter, /* C# compiler will assign 5 */ + Saturn, /* C# compiler will assign 6 */ + Uranus, /* C# compiler will assign 7 */ + Neptune /* C# compiler will assign 8 */ + } + + static void Main(string[] args) + { + Planets planets = new Planets(); + planets = Planets.Earth; + } + } +} diff --git a/9781430248606_sourcecode/Ch06/Properties/AssemblyInfo.cs b/9781430248606_sourcecode/Ch06/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..55b4932 --- /dev/null +++ b/9781430248606_sourcecode/Ch06/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Ch06")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Ch06")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("ccc7b972-0adb-413b-9a6e-354cd5494d12")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/9781430248606_sourcecode/Ch06/app.config b/9781430248606_sourcecode/Ch06/app.config new file mode 100644 index 0000000..c5e1dae --- /dev/null +++ b/9781430248606_sourcecode/Ch06/app.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch06/bin/Debug/Ch06.vshost.exe b/9781430248606_sourcecode/Ch06/bin/Debug/Ch06.vshost.exe new file mode 100644 index 0000000000000000000000000000000000000000..bb84a51ac4f20534146c09f2fd9c928d15a903b2 GIT binary patch literal 11600 zcmeG?2~<)?tG75|5OPOMcC{DsnWb(K|p-9Gz zCYX{WA(Jm;dIfQqiJ};SrLL}G(n&hl8zFy;j>apOj_;bS1<^27Oc^0Hz(7W(Czb%1 z@VUW90w!d%4!)s8@lWO`4L-o%@Fz33`3PxI|9bMyD%lrO3DBh`b_0^65V}%-gn|b^ zWm*RtcF<41tL^XP%x>1H-pWw-?KO@iBWB8={z?S^v{7pXzI!Jo%+8WXB|Jbhzz%$;+6FHiiU_~N3I z3EN^9UtHuj{7z%|8vGH<%)(m1Ea7^jMXH#Y>ya2$DiaMPF|c+I&NvSYVbqF9*~#r#ILj8dWjm251tb7C6J%*T7omHQ z|3QZ`M<(G55b{zd>0OBcT-q z$5D_+!Bh&aq+kUFn<&Vjy~Gre83lc5nD5M>aGT=)?fZgOM>nV`Kqv zI0bDf=!~2J||60WgZ0+&DGHhBHk2136`;HfS!lVrq~L;Qp?LLw4#2#K5zlOj)1BCy1d77#r{JpDO<77O@Xp{xhn!4xZ$h!p@= zFfDSIN{Pg1K}r~3)_Zst+KZ6#Bz!U1wTDViV=OmGAajRFq+hp^({qI>UpIiLVv=~h zxay+kDH5kh_;K;yXzG;G*Tj7I0^&~_{e-b1Ng|izo-6pOSGO>vq9h3^M-Ep;2n2i? z;VA;Ob9u6_h6EBx&>#pUI*0gkg>gyTxL$JaT8kGU;HGf+ao-Tzcp`=5x@Rq2jC5KA zDL81CbnCa%R49SU_|be|v6omoM|<(PaYE7-c~ay>L?^|?aX&MN4jh;n*m;M|z$BDt zLV?wpRH>I1yLLe*EkY6~5>Aj35>FW2!};IZ6RZg`l4U+2WpPr3Jg{aVFJ1yBKdala z!{Q|bH-_8;-f}`H`;N<(`ErFZ0s_H?nELq^^AiFst^h{IAPxchk}HJW2r40D)L?1| zN5+-NKyKu|BH5O9=>_$oO%{WM1RNkt$|LX>+U#yGW4SL{W#Dq<^-?pWTs_=s z+sMi))7<${{lWc@(;pS&e4xt(nf|K_4fiC?yA3+_%vvY*l!4@4iv}=BM|c$3*(8Ejv=a+B_=Ss*JEQXuIqpixQ3a_4(W> zyEKm#xtQrM)b=Fwn2Ghv>;fV#EMt&fQn_Nx)Omd`sf+@qw7IY%8d=~wU}z94&^xT# z?O1hMy$gBFV<=2Rx4X%UFBOAX2ZDn_3e*V(5c0klQtL7p%59=S80yz;986D8eMaINL%0wc8G%|*e$MEHmK74Q% z!Aa2qJ`Z*(ODar2$dFuS7_I+z60R6Fg7-`wLHR_mTT!wUQ^u&61Y`_zfv7uESG-PI zL=b$z5K9F^02Rvd;_$Xby>8#V-GB3vXN;}hekVw2b}%EC!sUQGG$K1h+L_tfM2e!P zOCtHUjw8EKEOAUULMMT4SGq-(nO(Kd^R74+p{XEA@0kR39#JP2L9k*3WE=-K98<(} zqe}k)-;w}E#jg-2r+wZ^?F0lS_7$G&N8TMKx*>Foia|&WS+)ZhjyMosg(Ghi3MD_V zlt8Ha0ra7)2BA8})Ao*tk&JOg@{U+nBp*Xj>4k4odB9b z6pKVuFB2+W3WHWIV5QK`MKb6of?7waV3?3D4|tM6FFxSozD0@ZgTuNz{_IdRDFbAO z)M2bA&`X3r0!GVV7PvbAj0da~>bA%RB0vJogpW-A5a@S}5mS7nfE2jYc(OeJxZnXV z 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 + + diff --git a/9781430248606_sourcecode/Ch06/bin/Debug/Ch06.vshost.exe.manifest b/9781430248606_sourcecode/Ch06/bin/Debug/Ch06.vshost.exe.manifest new file mode 100644 index 0000000..061c9ca --- /dev/null +++ b/9781430248606_sourcecode/Ch06/bin/Debug/Ch06.vshost.exe.manifest @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/9781430248606_sourcecode/Ch06/bin/Release/Ch06.exe b/9781430248606_sourcecode/Ch06/bin/Release/Ch06.exe new file mode 100644 index 0000000000000000000000000000000000000000..856ce9a515268cb9ddb055b49e8d73a1998b137b GIT binary patch literal 5120 zcmeHKU2Ggz6+Sb&-q?;~>?AY^NyB8F&@`#nYkQm8!A{oR-Goj3hj-)f&bfE)J)Zx-`2a?jJnWK*ewY@3zJ<< zVdv`>Q6Jjhe}d>lr~H5MTHAHmvm5Qtbc{&_tRA2pi1?tBu{QliOOi%(E5&_ope23F zf=S>J4s}o#-lsUTTy&JGTTlvH2k~@JmT0!4DcL2FSCH^cr7o&#m}{TN9gz~v2JX@6 zP&!6~=#H_29N_gPjvQ3Zf;<1Ib0^iaaH;nk^s}XFvx?{i5=Z zZX$-EuM)kB_XEL~0&Y4rU-WnlYjqg!q3b1j03NGMLszdC^LYOe?Kzkpnzh^t+JZ1# zx$(G4Jz`J&>&!SkCViwsXo^^c7=5HiB5gf*`kQUxW#=P$N1i8Wf=001JaSU5?_`0E#Q(cL*Jpi zjMSE`uOBTU%TbQLOUI~)J#$LplM+WIPD-4SSd{o#iJu3~lP-Bv;vI<%i7x|}F<+5B zM?U}#U=O{iK8HvI-;LjKJbj3+8|^c|!*mXKltzFjCfl4?^zH zb*_sJ3(N~bhmp?l6-Be8mf4zxX-wCl8Q*7i#cGtzz+y82zP3sju(mkQe1n^w=(<~( zbDcG_7IOVzYTMJD#_n;*L^U*m-HM#+HMm(@-$PaAdX?EazrDw(&_ci+&bOiroxrqN zs^}mqu2*7w!!(#rIoDn>eY4UT@72((?zX(bxW8xQS4@lTQtp_xsmJL>Wh9>kS8zkJ z7u?PennUuYUUOVOFb$vbtP<90`Zn((87yH_A%GndAs!F@@Xi1skgKxHEWIu{e=EG@ zC^2FjR29=QgN{`y^Trak6C?WAH44cilLBJ+egr*RUw?n@N5lD_&AYFEoBe< zO1}WL3ouv^Yxxtfs+*PRR;UI_No1YeLV`r#W#f;L)fMx3LR|k8|^puG;J(B zI!5%QLZ=PGc&0M>%-C>RuU3XLqvMs~N&NyF9)CJxRG-dFW~!oRpF;aaaTVc5bXB2G zq!tS0_F_HNT*ql~T`5%VKipR3P2aQh#sZdgK#bAa8ZFa}vst)DU_^jKC&hVPRv){; zb#K9S3UvctCU#eOox3miG8SsrL}DzicDj!mqtGS(D*-KRDn+cdYO>d_OSFj*(Xh{Uxq5+2~`Wu z$#(xdX7}-(3p?Jnd2+Ol{y5}7X&fM1V^-u@?05JyimD~ue#9K28Wd4Q=eC0wEaXim z8)FG|Qe-=YR$WTO{{jawW)7{I?43iz9yO$AHS`z%x9pZ_bdNOr#xVaV5M_^?d$BoA zWJk>1%Cu-b+=r)RZk90Cr7CV71G8>$atBMCHJA61PQCV~*igaVJkFua~b3Pb4)z(4DGoxel97 zHkhBheCa^%l-{hbG#GIF=_D$%i@vdrQpO*)O@q6>yA})^u62-b`a#iIb05*4 zv7{V_xqXJJ6LU7(kZ^V + + diff --git a/9781430248606_sourcecode/Ch06/bin/Release/Ch06.pdb b/9781430248606_sourcecode/Ch06/bin/Release/Ch06.pdb new file mode 100644 index 0000000000000000000000000000000000000000..332b9fab9e9e1ae78068d76df0143427de6b7746 GIT binary patch literal 11776 zcmeHNUuauZ82{3AUDGt%(n-}0N}L;P?M!YmJ4+Eem!>RRLpQR4N}x;An=NaT+ufV$ zCW5UGKIqFHeCdOr2>PHPOz}ZiC~gcCoZyD+O%W9p*_`;W2U-37?#;DPq%t}sP0rW; z?sxuu=YHoq=YHp$uT2$lrePWRawr~&_x6TT>EX~LVNDCPbq%Ej)MWq4y+}?o54y); z>RAUCSX@%n$QJ0AuN!&z4L^4Or%_Ko{n(}ozyh+g)C}&O#Y0hDTfke_qf>+XHw(NH zj(RTlel_YrL+{VW{R``|$#d6EbPd!HS|TUn_bmJy&Oe+c$3C z;NJcmyE!nB*=HD&nZ)U7-7Lo+jA_wWCT+}^IX!Mn=yqk|bhbD>rCXW!32jg2kZBw@ zv&C@E5;-}L8K<;vOXnPE%a+bjnw7dMoul;hvNZP_>hTyb2$0m-)Um^V`P}l2=9%RS zIyS$2H1(P1PS1I4j}W0fcjP3_-wuF%zkBZBg(r}%o?9JxMYUl8es^K%vEBZ+6_u*@ z0L)tpi|uuh$`(pUcZxSixpx4!E$iE4TkvT5j8)c)(y^Qlj}%I$P%T>}WH(1!S4{NM zOfd<8BgSx{G$GQ3Htegqjj3BRQ)RBR7Kur7^CyEpU3%}yFO%oD`q2&>(N1r{EGCW0LgG*MMGV1f1;&_Sti_bt#Z z8(g0Z*B2j6^^PSyNSUfp2(b=`meoa1MFQTyK4Ci0SBjHlZ%%e=FN zfL*`{;8G_NI3I(qFWL+bCpugmA9icVeey#kdjy>8r+;I(DI7@Vzet>rd_RqWJMqmS=sJ1Myxwh0%+9(Ss N3n&XH3;a(O_ycUMNcjK& literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch06/obj/x86/Debug/Ch06.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch06/obj/x86/Debug/Ch06.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..721c909 --- /dev/null +++ b/9781430248606_sourcecode/Ch06/obj/x86/Debug/Ch06.csproj.FileListAbsolute.txt @@ -0,0 +1,5 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch06\bin\Debug\Ch06.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch06\bin\Debug\Ch06.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch06\bin\Debug\Ch06.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch06\obj\x86\Debug\Ch06.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch06\obj\x86\Debug\Ch06.pdb diff --git a/9781430248606_sourcecode/Ch06/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch06/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..e71d769ebadc59e457406bf4b8e9732968121e05 GIT binary patch literal 6630 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 N3n&XH3;a(O_ycUMNcjK& literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch06/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch06/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..d89f37da644d305e7a4647c5ced4a506a10f01e9 GIT binary patch literal 5705 zcmeHLdruoj5VyfxFoYJb*hclW?9 z;-)1D6XcC+c7JX9HmV#`+=?Ypq9E%@c_liK3iQy=o1 zMLcycorG$Ki#&V4=V1{*; zfLjcF&Fj!va$Qn8D9RWzh7BVY8$ue7$LWjo&yi9~X{ck0;WKhHC5`n1_#nAsZDRxu zvwM5DOu?+)WnKU~jLXBhXlhAI?$^?0T{%K}ymIlLEd1}+WOHf*1Uq9iWX)&hv#ZGm_&-I_q_7&FB1u@T=NSZa5*9Qe6$Y7@50QNL;hrNV zvYZeU8IMo`%dOd1Uuy_}%n%P@NID*yop2*sxb#>ehps*#o1D0qX5~spOg2K>AETOI zd#a{eSVQqMDBkX=_^9Gb2sO;22EQK~@=P;}ND1@>Yz=jO)-SI@os?2fP{Z4PctygW zqVT+$-h4FcY3J&|FV4M5Dla>T+W`hdck0Lp!z`Z&d>{Gcg4)9!5S0e|C{{f>1 zC+%}Na{f+4yV<)(oWc2pZY17&)apmx-*Irbw?8_XG%=yNEk#g{?r4nXNVa>q + + + Debug + x86 + 8.0.30703 + 2.0 + {355AD8B6-3A7B-42D3-A769-1C5F2209F492} + Exe + Properties + Ch07 + Ch07 + v4.5 + + + 512 + + + x86 + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + false + + + x86 + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + false + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch07/Listing 7-1.cs b/9781430248606_sourcecode/Ch07/Listing 7-1.cs new file mode 100644 index 0000000..184b887 --- /dev/null +++ b/9781430248606_sourcecode/Ch07/Listing 7-1.cs @@ -0,0 +1,35 @@ +//using System; + +//namespace Ch07 +//{ +// class Program +// { +// /* declare a delegate type. */ +// delegate int DelegateOfTheCalculator(int a, int b); + +// static void Main(string[] args) +// { +// DelegateHandler(); +// } + +// static void DelegateHandler() +// { +// StandardCalculator standardCalculator = new StandardCalculator(); + +// DelegateOfTheCalculator delegateOfTheCalculator = +// new DelegateOfTheCalculator(standardCalculator.Add); +// delegateOfTheCalculator += standardCalculator.Sub; +// delegateOfTheCalculator -= standardCalculator.Sub; + +// /* Execute the Add method */ +// Console.WriteLine("Sum of a and b is:{0}", delegateOfTheCalculator(10, 10)); +// } +// } + +// public class StandardCalculator +// { +// public int Add(int a, int b) { return a + b; } +// public int Sub(int a, int b) { return a > b ? a - b : 0; } +// public int Mul(int a, int b) { return a * b; } +// } +//} diff --git a/9781430248606_sourcecode/Ch07/Listing 7-10.cs b/9781430248606_sourcecode/Ch07/Listing 7-10.cs new file mode 100644 index 0000000..d8e1bd6 --- /dev/null +++ b/9781430248606_sourcecode/Ch07/Listing 7-10.cs @@ -0,0 +1,34 @@ +//using System; + +//namespace Ch07 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// ExampleOfFunc exampleOfFunc = new ExampleOfFunc(); + +// Console.WriteLine("{0}", exampleOfFunc.Addition(exampleOfFunc.Add)); +// Console.WriteLine("{0}", exampleOfFunc.Addition( +// () => +// { +// return 100 + 100; +// })); +// } +// } + +// public class ExampleOfFunc +// { +// public int Addition(Func additionImplementor) +// { +// if (additionImplementor != null) +// return additionImplementor(); +// return default(int); +// } + +// public int Add() +// { +// return 1 + 1; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch07/Listing 7-12.cs b/9781430248606_sourcecode/Ch07/Listing 7-12.cs new file mode 100644 index 0000000..0dadc95 --- /dev/null +++ b/9781430248606_sourcecode/Ch07/Listing 7-12.cs @@ -0,0 +1,45 @@ +//using System; + +//namespace Ch07 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// ExampleOfFunc exampleOfFunc = new ExampleOfFunc(); + +// Console.WriteLine("{0}", exampleOfFunc.Addition( +// exampleOfFunc.Add, /* Pass method name */ +// 1, 2, 3, 4, 5)); + +// Console.WriteLine("{0}", exampleOfFunc.Addition( +// (a, b, c, d, e) => +// { +// return a + b + c + d + e; +// }, /* Pass anonymous method */ +// 1, 2, 3, 4, 5)); +// } +// } + +// public class ExampleOfFunc +// { +// public int Addition( +// Func additionImplementor, +// int a, +// int b, +// int c, +// int d, +// int e) +// { +// if (additionImplementor != null) +// return additionImplementor(a, b, c, d, e); + +// return default(int); +// } + +// public int Add(int a, int b, int c, int d, int e) +// { +// return a + b + c + d + e; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch07/Listing 7-16.cs b/9781430248606_sourcecode/Ch07/Listing 7-16.cs new file mode 100644 index 0000000..7d34e37 --- /dev/null +++ b/9781430248606_sourcecode/Ch07/Listing 7-16.cs @@ -0,0 +1,31 @@ +//using System; +//namespace Ch07 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// ExampleOfAction exampleOfAction = new ExampleOfAction(); +// exampleOfAction.Addition(exampleOfAction.Add, 10, 10); +// exampleOfAction.Addition( +// (a, b) => +// { +// Console.WriteLine("{0}", a + b); +// }, 20, 20); +// } +// } + +// public class ExampleOfAction +// { +// public void Addition(Action additionImplementor, int a, int b) +// { +// if (additionImplementor != null) +// additionImplementor(a, b); +// } + +// public void Add(int a, int b) +// { +// Console.WriteLine("{0}", a + b); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch07/Program.cs b/9781430248606_sourcecode/Ch07/Program.cs new file mode 100644 index 0000000..d59c1fa --- /dev/null +++ b/9781430248606_sourcecode/Ch07/Program.cs @@ -0,0 +1,32 @@ +using System; +namespace Ch07 +{ + class Program + { + static void Main(string[] args) + { + ExampleOfFunc exampleOfFunc = new ExampleOfFunc(); + exampleOfFunc.Addition(exampleOfFunc.Add, 10, 10); + exampleOfFunc.Addition( +(a, b) => +{ + Console.WriteLine("{0}", a + b); +}, 20, 20); + } + } + + public class ExampleOfFunc + { + public void Addition(Action additionImplementor, int a, int b) + { + if (additionImplementor != null) + additionImplementor(a, b); + } + + public void Add(int a, int b) + { + Console.WriteLine("{0}", a + b); + } + } +} + diff --git a/9781430248606_sourcecode/Ch07/Properties/AssemblyInfo.cs b/9781430248606_sourcecode/Ch07/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..6e846c3 --- /dev/null +++ b/9781430248606_sourcecode/Ch07/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Ch07")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Ch07")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("29681eec-82f9-4a33-ad59-5c35935b8b46")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/9781430248606_sourcecode/Ch07/app.config b/9781430248606_sourcecode/Ch07/app.config new file mode 100644 index 0000000..c5e1dae --- /dev/null +++ b/9781430248606_sourcecode/Ch07/app.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch07/bin/Debug/Ch07.vshost.exe b/9781430248606_sourcecode/Ch07/bin/Debug/Ch07.vshost.exe new file mode 100644 index 0000000000000000000000000000000000000000..bb84a51ac4f20534146c09f2fd9c928d15a903b2 GIT binary patch literal 11600 zcmeG?2~<)?tG75|5OPOMcC{DsnWb(K|p-9Gz zCYX{WA(Jm;dIfQqiJ};SrLL}G(n&hl8zFy;j>apOj_;bS1<^27Oc^0Hz(7W(Czb%1 z@VUW90w!d%4!)s8@lWO`4L-o%@Fz33`3PxI|9bMyD%lrO3DBh`b_0^65V}%-gn|b^ zWm*RtcF<41tL^XP%x>1H-pWw-?KO@iBWB8={z?S^v{7pXzI!Jo%+8WXB|Jbhzz%$;+6FHiiU_~N3I z3EN^9UtHuj{7z%|8vGH<%)(m1Ea7^jMXH#Y>ya2$DiaMPF|c+I&NvSYVbqF9*~#r#ILj8dWjm251tb7C6J%*T7omHQ z|3QZ`M<(G55b{zd>0OBcT-q z$5D_+!Bh&aq+kUFn<&Vjy~Gre83lc5nD5M>aGT=)?fZgOM>nV`Kqv zI0bDf=!~2J||60WgZ0+&DGHhBHk2136`;HfS!lVrq~L;Qp?LLw4#2#K5zlOj)1BCy1d77#r{JpDO<77O@Xp{xhn!4xZ$h!p@= zFfDSIN{Pg1K}r~3)_Zst+KZ6#Bz!U1wTDViV=OmGAajRFq+hp^({qI>UpIiLVv=~h zxay+kDH5kh_;K;yXzG;G*Tj7I0^&~_{e-b1Ng|izo-6pOSGO>vq9h3^M-Ep;2n2i? z;VA;Ob9u6_h6EBx&>#pUI*0gkg>gyTxL$JaT8kGU;HGf+ao-Tzcp`=5x@Rq2jC5KA zDL81CbnCa%R49SU_|be|v6omoM|<(PaYE7-c~ay>L?^|?aX&MN4jh;n*m;M|z$BDt zLV?wpRH>I1yLLe*EkY6~5>Aj35>FW2!};IZ6RZg`l4U+2WpPr3Jg{aVFJ1yBKdala z!{Q|bH-_8;-f}`H`;N<(`ErFZ0s_H?nELq^^AiFst^h{IAPxchk}HJW2r40D)L?1| zN5+-NKyKu|BH5O9=>_$oO%{WM1RNkt$|LX>+U#yGW4SL{W#Dq<^-?pWTs_=s z+sMi))7<${{lWc@(;pS&e4xt(nf|K_4fiC?yA3+_%vvY*l!4@4iv}=BM|c$3*(8Ejv=a+B_=Ss*JEQXuIqpixQ3a_4(W> zyEKm#xtQrM)b=Fwn2Ghv>;fV#EMt&fQn_Nx)Omd`sf+@qw7IY%8d=~wU}z94&^xT# z?O1hMy$gBFV<=2Rx4X%UFBOAX2ZDn_3e*V(5c0klQtL7p%59=S80yz;986D8eMaINL%0wc8G%|*e$MEHmK74Q% z!Aa2qJ`Z*(ODar2$dFuS7_I+z60R6Fg7-`wLHR_mTT!wUQ^u&61Y`_zfv7uESG-PI zL=b$z5K9F^02Rvd;_$Xby>8#V-GB3vXN;}hekVw2b}%EC!sUQGG$K1h+L_tfM2e!P zOCtHUjw8EKEOAUULMMT4SGq-(nO(Kd^R74+p{XEA@0kR39#JP2L9k*3WE=-K98<(} zqe}k)-;w}E#jg-2r+wZ^?F0lS_7$G&N8TMKx*>Foia|&WS+)ZhjyMosg(Ghi3MD_V zlt8Ha0ra7)2BA8})Ao*tk&JOg@{U+nBp*Xj>4k4odB9b z6pKVuFB2+W3WHWIV5QK`MKb6of?7waV3?3D4|tM6FFxSozD0@ZgTuNz{_IdRDFbAO z)M2bA&`X3r0!GVV7PvbAj0da~>bA%RB0vJogpW-A5a@S}5mS7nfE2jYc(OeJxZnXV z z&=#?g6V$=wK;MbkDI7SI!WeQ^CS`v~K!cP!6Ls~m0g03HCzBh+@8@%Usja`( zRUhEh9p)q@kq8zn0BMtae6H~x8XbD4CjSrk|1SY%$D7f!QUCv!`kxhkEdlC{lSV^$ z#(*)3eJrzmv)`&?O0<%U0XU$nXc)#;#rr5K4A-F31}PvsUQuPZBF4Zn9B3G$Bm$p^ z+xEg};-+*Al`u;U)AZq(Ape5E<&Z}jc}SDTg)8}o8}*{e(B;nwSKrv~9H~AQdwjF4 zytOrcZE;D4HXF}iOv5wi{v~u8Mx&{)%KP37{uH^cp}uRh0dOQ{563MO=@S^LIzzi} z*-Ueu1(WUMCW9mBJY@F8S7T}Q7cHV+lSJGOh0EM6pm>nUzHKpl6$ z9c>`lvT>V;0qSfUsM-S(QUsnti42G+>d+=|*gAM$lA^MX%6D98JY3pjA|YD~*C3Hf zI!d8LOrl5_)5VyI&Yv)5j2m?@HmHX&^2W*}Z{k3e8SLqfXJA8d^=>_4m;$0_V49#^ zOof(#VW>J~&gG~|Z>JyZwzIFlH?{XmuKzHk_$TifPtW_@znJ%9f`4fAtJSn01FrfB ztW8{r!)J`EReh`HB{h53l@(|NA2%KTqU3jV<00qWP1>SYpB?DEdD*xjtD7pVhyFNj zM5^doKSSp{CoQMuI*V7a&Lc3JPwm5ex9k;QIcq=E?BUJJcpq7ko;81Q#f$yRH=cFe z5b>h8C`l0N{0;jDkyEj#=T`F^;m(Gk`yGp8_z3auXm&^k}+WEW& zt7|si1E186D{>Cz=$(lTNh#Zrb28j@eMWGuP+_y>1}xWTU-akX<*7w!&MZO!KM`yl<0Iky_CdajPx~l`pPt| z$>+pR`I2Jekh!{h0v3O2*dY1m?JYwS9YKpmkIwCT-t`Ud(QP+eljKnc!#*(-a5`kT z0g2FH^k?Wc8k~_M@#J04uOACs6XM0%=*4@6tCG!{3|R?3Oanu+%XiKlXZGUE z!9ZE*#9=baq{{4%<^IcOqJRgdAL`xYAJ-^NeM$2?aXP2*9jEc=`nqt@GoIHrFZ877 z5D5;-{if^h*b5Dr3*JQX3MwLMovuvFn~*ig_O zk_@%dsf#MDsyA$ID8J6!cNiZypQ)>Ec`)>qd&?C3ZlO6p=ZN^1ms`uvq8sKAQ zfscvq^f6rQtSjXuHGA(P1@JTf#$8Q194GKG4mLJ+xQ!F(aM-wQcNI_1{9o}n>XhMt zUu6UY1&4MyDEgl`sDJ5u>hJ|0yd^(y5{efDA>;Z(7Y$r?PjYj7DP5Xj_FIuQ;#||u z&=`HjptkOe`hci{cqM?Z7vhf99GoD>l0v+ePeXBU3qPaY&~t<=wFG+B6+ z#7wd_Toon!sa($~gE+SJV0lvRz}B3Vx@ML0%;cLcIyzbFJj7-Qx%H5C{?KB zV)bs>V(P#!&?I*~Y-FW0>YOq#X6WJl)4sj!y~u4pgyDia<4z?GCHC32@iLisl(jWa zB48zUKl$@SiPqu-K8dx4=Na<-T59ddf#ZY)DBQQpJ7O4PG(HMRG=3gh!hRVYf4>Vg|mrXkTWVH8ZMCy}ER7;eB(l^wQ%yM`u5I9&Q(rmhn*QiiF;(9r&nOJ#V&GkQz7Xqj0TK z^O@lhdg@LU(>`AR#3-X}yxO*SV{P4$>0!?7srRge4bKBC^T#* z8ujN(wwQ*TObBqI$!owPV^5*ifid&vi=Rmq1C#e1#Vx2JfMM)~-!tV!vGuFB3ApEfFq{p}!dMD5Lx^n8<%5`h3 zY-+WGLQiHscD23c$1XJAw=||@NN`ro(edZ!DZG1{bZF5}KU~_$7st*V7JGkR_0#zW znx2$>)ZU~zX{d$uS+{H9jKT7~i7|=e!frG_zjb(h=1*z2=lRndmcOnqRt`6eAKP@T zULI*ZXP+sfDtz*Eecq?E)X`5aF-!xTl4VL!MXRyOUndaGYI)>Z zu(EiD##GB7z36E+#TPOIhYyX6_g-|%I!h~f&-=ZD@&!*!zt?%!pmk-w#;XjubmWN@ zvq~GMDLzuD$hNJ1w|sJzd)CDH%Y_v~tb7|qYdu@0-=Al;IHAMeWMJmtnN7asag_gW zL_1oFeLAlk{V+0wLA}Bq(fzv%BYsbNImS0lGAXnxP6jvn0VS z#1pxH9tnLFM)iuE;l!sL)bfD7?4zl{wS5Y+0p(P_1#@O>=Il@ACm``x-gY^mDc=9xt-l|Et>xj!WIP z1-I_UI^@3^TC}#YA~`H%)Mbg+9^*IQpvu5O6?TP3ipxh(;ZdJ2UDH1o9)0Bq$neM! zq9J>5O*U-GN0Gr1RM}(|Pp|wZ!lPlhDV(|55w>#zR?u zTwZiW!KDt92M?pa%c}05oj>hRl!evkvztGzim*2b>R<18)sQ>JWn^WzZolLe&RT7# zV%aZI4&}pYc~-u<=@ae>TDJ{fk)NwEcO%-IY@)QvQcT}(X|iO^t>dLb#~=2eq?jBg z@vLx-X0QbUz#${W|Dpclw{v_*5rdhcl@VV|HTHR zycK$~{f}QRhRQV}l%a z_&OAc+Zt`Rn&<6T-6zvAudYnGW7+4IMM1Y$jagZ3r=8xa)ogIHCgyBlu(SWdj{}=c zcU~&WX&ry;*JtnD2Si~HzssE?pY^M#J%_n{+1k7{ho=rI>4%%Nl+NWYHL$Sw(QnBp z&&&l+Ze7Z34zjX${@vXjD?@6kFE0BHKI4%;yW-`D{3we%hw|qw?I*9A_Ca@8nMj-G zVLoxxLgz(p_o|OK7JjGi6P{4eP#6%dfKI=|-Mj;D56rE5t@W&V&~0MpNl^k?eUsD@or(o=%<5Y<=i#wO)^B40xI9 zd0bOvYv8?G`+?W!9>`$BRsYAMOGaLJDR*7+mp%W0d-Wor22q<`$)Gg7 zKl^2B1Kb=sBlyp*1HDZPo{$(B7^<@0ds1VI&%VctZnxQM6_;AD?KkZ_-IB+AQuFR- z*T@4KKV+yLG;cjqr21gk0kg5c?SFGQ1q0uRBF8snjVnaH&pIK9b_#y4rru^YJE+h7&5x zs9AY=_}k`&Dd{i6GvD}@ZFQneOa0+~>&jEiPnP;qT3sG&zv|har+8omHf8dz22H=; z|G3?jRGN1{Sif4WDVp0bTj*@RtN(Vr;u|t(L+}jR;2s?)vNLFEfKvX)jqS?= z5R9$oSXSzMt1XGb^?I14vsJq*N*EYgw<#&GH6ftVGuOHLi0kD!oT# zDkga({4jf8)|P2o8}DIStxW-pd_APHW6y?rQ=9OU`%I(z6l^RuzPlq2jlZ((H}0Xz zol`F;9lGF}@iatK!0=jeLS@HJSJ!c7;z64O-#&Dg&#>pd-(SCc=u5RdrFLto)@OT1 zr0ohy+M*GwvZH-+f&1KvF_Z3; + + diff --git a/9781430248606_sourcecode/Ch07/bin/Debug/Ch07.vshost.exe.manifest b/9781430248606_sourcecode/Ch07/bin/Debug/Ch07.vshost.exe.manifest new file mode 100644 index 0000000..061c9ca --- /dev/null +++ b/9781430248606_sourcecode/Ch07/bin/Debug/Ch07.vshost.exe.manifest @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/9781430248606_sourcecode/Ch07/bin/Release/Ch07.exe b/9781430248606_sourcecode/Ch07/bin/Release/Ch07.exe new file mode 100644 index 0000000000000000000000000000000000000000..a86837ccd955722549c284d497fcdaef7a89b477 GIT binary patch literal 4608 zcmeHKU2I%O6+U;pcASJ*XY-tqd@ z_pfvBb$5$|TmeND0;N15ArP;XBGiXSR0V_tuM~+FB&4GD5rI$ywdJ?Z z)wZmF`NC@o-C>6Ax?ac{oQcR~mdh&Fs?70Bo;`Ky#QDVZ>H^WS)95Fbt{KZ_Jeca->~!@MY_x;x~v+tKYpbA>$=fhh4RC5hnW+ zX78{;^a;@KTp)V1m;ayUtn0d3ISBd-Jv!Ntw?fc&j{zW4aVCC)QjHO9WJMqhP|CL= zCIjdv(0f`D3CRj>dsrxar44jx3!(S6BGG&=E$6poUeTm)De9*dBQmjvyc0-=-0i<= zXZq65jg0iAbE&hy8zZ1^jy#t7?0xWhWS~2v`RX(C8fnV5^m%6@o68n*h5VFc^^*-O zB8K6w65YZ0Jvpz2!g8B|Tv35@@_GzkuhKH+GSuNK*Ow|7>rw{O!}GS+04*ETwJV<_ zIxdNSK2e~vU|@O%UB)T{l}7SmPFL&bk#?jox^#M3#Bj z@;Vp6k&!Q2Ha{dhux%noX`vdD&%;GLU;IU{H-to`V(CrS3qs2XsKOgjv#Ia%F6O}! zZVUoAuo2?%;g9GI5DaxHYuwgbY8LE;w-zTx>Os`7Y%AWHG0V?T$(CeYD_jJ zF5?l>=vW^096v-?GQhO+XJyUTs5bOKS5&bA-`3k#k^a+Chjk@v0u^1= zMOoTqjUswXmcv@=?6X4muX^r6%i!w%*S3WBVh~sF&Ub}WHPHWY0UhdV)k^it?`R8u z$lodMek=Fgzv$+O)OcpPKJR(k^@WztMOYq|q1UTkBn)20kt*RrOLu&m2X&dXy4QHV z-kQ8z#{qIZ;EI{`%?8oeleZOS>4$R8LR@oB^Ew0LeDju9?OwI+vGJN}tK zk;fkfO{h1#vvUQz2e_lsj=yi8GHqc!{yx!ixcgdnk9Ft>Xzlrw$NQG+cDcuKtd~)R zYOQ=?Y~)SH+s=6~r8x3i@C_wK|iseAkIl*-L2bUiXDLSDiiulM}MHi%K?WdGWOnK_u3Nu^Ul?gGT= z;6!Xh$Z*H@XY`=n`#=4~%v{T{*-rf8%w|yNGK{;1XQJ%SX0F#3M<+8ZP#*}k=knQ1 zn+KV>r%#=j(UT{f!GIggW+LHE2gVj&%V5;84B-XdW;kki&a@sl*`0ibIl60Y@*wP# zOtl+KG1fJ + + diff --git a/9781430248606_sourcecode/Ch07/bin/Release/Ch07.pdb b/9781430248606_sourcecode/Ch07/bin/Release/Ch07.pdb new file mode 100644 index 0000000000000000000000000000000000000000..aff0be912ce5fc627bf23b841d6cb4a93a95d674 GIT binary patch literal 13824 zcmeHNU2IfE6rQ`SrT?&~s1R}0Vvy?olwuo#wy+ebumQ4=pf-Wq-CMhMySLokYVoNW zVjSa)sz6gP9ImOHyD~07KKW0~L-JYXK{vU=dlmr# z!+&`+oe^jjVmdc}+PA&xi->_SAjB-i5Hm3(N+C-I@$jgq5hy9@)_IM)5(0aJ5#vbx z59-z*y@)H^svBpLw?YpR)MSn0_s~*twzQ z@Qf4w-ElFz?sea*pSG>p_w(uF{@pEZzUt-Y9`Sdb@E^izaIw7o(AKvytw)p3tbOm- z6<CnAv<>uGPA+<9LpajV5x4uD zgcY@umNd2vn7w^zE87w64mWkgb7m%KI?1S+PV}eEob3b?Ss@-@+R@2CmJF0|17&5P z1Ow4%=|Bkv%Bnz#QGq62q4kdam}B;`789>TU;gD8fMXAsu(T5z@KLa)>vZCOF6W&L z8$)QrvR!9)Y>ItlO!StVsOq8vjC3u3hp%-Czb`J;EUvTGbI;n7RRAw7OjnZwj26EK-M45O%l$L(pa^~>6 z4}aVK@q!B9NADcmN?S~<6b+E27=)}3&!T!fmilfJ)ySjXWsLC~(sf|Bu7=wl*Dh{` zB*A~MLR5<1kuC@Cp%TP&0Ne;JHX?4i|GQP=sMAFJn3ny&Jeg#=;Y$4hXU5R|!FSjP zx|}bm09Cp|KGAPwd`FfO@9(5C_;1QFM)$KWBP;{C^^gVNfxE7KRC0-uMgWO%$S9Z7X&etB z0^?X&x5=c*E`KuHK9RDk;mo;E2M&Xmfmee!f<2l#2+S9?a_{FpFGO@*tbR*dCg*J5 zvffT*a@;Q$NITarpKuQVbHv>Ry6}Br5*C0$UqiT?MWL@Dly4;O%SG4_?t-s}2`q=NCIgGRV$b8XdK!ttO zCu*d^82L?&_pY2{B=(7x^ko$O-A^UxKi!H={N>9#M&9uWq3;e=Q{2k&$p*MoQIO8t zz0{OJV7%Y|522PJT+Z~gXS!?=%9y=YR)n%nBGhe}Nz3U>+ld}m(UroLaA@K;u47;O z$}+AtWWgma4z+UPa)2ICkn`j!Z!{n|aqj^0vX>K_{{7&hU-i*OMKd9}7~cwvnjw4C z8ng`gA>=nJUI@uMl~dpxd|JUgd-MMf-3TV6T*Gbv6Ur(uVI`CmVC*dd_Z)J)WSLwW f*%hYi*27?7wGY~0X<2-z;Q;t;Iw)@IB3*4^F1 zxR#%#Pf+y{+nKX{e1=xaS>g|`QL&nhL$_FfMc+9cU-j=JV;Eg>&8VxFpA`x3|!&CAh41P=; zhc~JHT1r~4IIYbyMO~bgoPypt?p9f?z#KYj5!YrmQMBI^xpKbhIZi>4I&E@s(ifFU z1!NB{$qL-D!QZFIEE7?qDi~JsDw3-AphUi8HJ1yTr&R)>*m9+U`JKx8oWBNmuU0dfjfd*R7x&h z!|a&?pCILWL#SQ!T*d0NH{`0OZj_`pqK#@=Br*zgBpQus@CEwkSg9oytwYkms#yxt z$oP@ER4~hU2O&60@9*Ez1@e5CI3C?0OdKr)T}w(Zx0clF(&EBlmGhmm_`f$!HcOVQ zrRDT$W|5{=Ru7W5&Et+vbr5kl2sf;ETwOFeOwmDPQLvi^q5O{LRLC1>n4p8mp<#lC z_2N80a2p>5G7*pA;}{aa0+IMVAn-GeB#vYP$s~{o?LN?mHU(s(UF^Z3wGyD?CK1#O z5Ugpu-z*2fFnPLYEG7G>vWFly&pO&CpvU`Z&D`Mp#N0dsRI73?7Eyql3L9TU;;{g?+czlLh24-tL!Ux0cu zRP_ON71X!z1T46Nu#hK;7)VM~onOg(n@ls+s8-!P=TnFX*gHZlU-SOk| z91I){%D_A3{*G2+cwXCju>#Z# zqX;W~ta)(~QN)?oxCsQF*b)dnQJ3}=kVoy@jYZ6k_BBXn+HaVvu$os8P&0*1)6u>G z{#?6!bA_(e(Y^)w5A8kXZs!AZdK0P*@U33Tzm+Bouz6D^vqq|;y#gI!VB+sU&s4ie znh4gg3fR$-!1_o~SYd7tA}0{}BKX(72NLdjYX+$NIn)#?5R2G=PZJ2JvEB3Y29pZg U=wHL*@4x=pFg*T(a`D0BzoWvIrvLx| literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch07/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/9781430248606_sourcecode/Ch07/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch07/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/9781430248606_sourcecode/Ch07/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch07/obj/x86/Release/Ch07.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch07/obj/x86/Release/Ch07.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..39d35a7 --- /dev/null +++ b/9781430248606_sourcecode/Ch07/obj/x86/Release/Ch07.csproj.FileListAbsolute.txt @@ -0,0 +1,6 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch07\bin\Release\Ch07.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch07\bin\Release\Ch07.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch07\bin\Release\Ch07.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch07\obj\x86\Release\ResolveAssemblyReference.cache +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch07\obj\x86\Release\Ch07.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch07\obj\x86\Release\Ch07.pdb diff --git a/9781430248606_sourcecode/Ch07/obj/x86/Release/Ch07.exe b/9781430248606_sourcecode/Ch07/obj/x86/Release/Ch07.exe new file mode 100644 index 0000000000000000000000000000000000000000..a86837ccd955722549c284d497fcdaef7a89b477 GIT binary patch literal 4608 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 + + + Debug + x86 + 8.0.30703 + 2.0 + {4C3FB5F4-D3A0-4568-8462-093C6D6D3F95} + Exe + Properties + Ch08 + Ch08 + v4.5 + + + 512 + + + x86 + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + false + + + x86 + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + false + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch08/Program.cs b/9781430248606_sourcecode/Ch08/Program.cs new file mode 100644 index 0000000..390722b --- /dev/null +++ b/9781430248606_sourcecode/Ch08/Program.cs @@ -0,0 +1,118 @@ +using System; + +namespace Ch08 +{ + class Program + { + static void Main(string[] args) + { + NewsManager nlm = new NewsManager(); + /* Initialize the client of the news manager event. The + * clients will subscribe to the event in the + * initialization time.*/ + Reviewer subscriberOne = new Reviewer(nlm); + Publisher subscriberTwo = new Publisher(nlm); + + /* Some news arrived to the NewsManager to publish and + * notify to the subscribers.*/ + nlm.PublishNews("Higgs particle", + "The Higgs particle is named after Peter Higgs."); + nlm.PublishNews("Expert C# 5.0 with .NET Framework 4.5", + "A about the C# language."); + + /* Finished job so UnSubscribe the events */ + subscriberOne.UnSubscribe(nlm); + subscriberTwo.UnSubscribe(nlm); + + /* Publishing new news but it not going to be notified */ + nlm.PublishNews("10th Dimensional world", + "Still under investigation so don't publish."); + } + } + + public class Reviewer + { + public Reviewer(NewsManager nlm) + { + /* Subscribe to the NewsManager for the notification.*/ + nlm.NewsEvent += ReviewOnArrivedNews; + } + + /* When news arrived if subscribe then execute this method.*/ + private void ReviewOnArrivedNews(object sender, NewsEventArgs na) + { + Console.WriteLine("Reviewed:\n{0},\t{1}", na.Title, na.Detail); + } + + /* To unsubscribe from the NewsEvent */ + public void UnSubscribe(NewsManager nlm) + { + nlm.NewsEvent -= ReviewOnArrivedNews; + } + } + + public class Publisher + { + public Publisher(NewsManager nlm) + { + /* Subscribe to the NewsManager for the notification.*/ + nlm.NewsEvent += PublishArrivedNews; + } + + /* When news arrived if subscribe then execute this method.*/ + private void PublishArrivedNews(object sender, NewsEventArgs na) + { + Console.WriteLine("Published:\n{0} news.", na.Title); + } + + public void UnSubscribe(NewsManager nlm) + { + nlm.NewsEvent -= PublishArrivedNews; + } + } + + public class NewsManager + { + /* An container of the subscribed method to the event. + * Clients can subscribe for the notification via + * NewsEvent event.*/ + public event EventHandler NewsEvent; + + public void PublishNews(string name, string detail) + { + NewsEventArgs na = new NewsEventArgs(name, detail); + + /* If news arrived and ready to publish then call OnNewsArrival + * method which will execute subscribed methods.*/ + OnNewsArrival(na); + } + + /* If anyone subscribe for the notification then this method will + * invoke each of the subscribed method and execute all. */ + protected virtual void OnNewsArrival(NewsEventArgs args) + { + EventHandler newsHandler = NewsEvent; + if (newsHandler != null) + { + newsHandler(this, args); + } + } + } + + public class NewsEventArgs : EventArgs + { + /* Declared few private fields */ + private string title; + private string detail; + + public NewsEventArgs(string TitleOfTheNews, string DetailOfTheNews) + { + title = TitleOfTheNews; + detail = DetailOfTheNews; + } + + /* ReadOnly fields */ + public string Title { get { return title; } } + public string Detail { get { return detail; } } + } +} diff --git a/9781430248606_sourcecode/Ch08/Properties/AssemblyInfo.cs b/9781430248606_sourcecode/Ch08/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..627b352 --- /dev/null +++ b/9781430248606_sourcecode/Ch08/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Ch08")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Ch08")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("33123ae2-6339-46c0-8b34-c9211a312df6")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/9781430248606_sourcecode/Ch08/app.config b/9781430248606_sourcecode/Ch08/app.config new file mode 100644 index 0000000..c5e1dae --- /dev/null +++ b/9781430248606_sourcecode/Ch08/app.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch08/bin/Release/Ch08.exe b/9781430248606_sourcecode/Ch08/bin/Release/Ch08.exe new file mode 100644 index 0000000000000000000000000000000000000000..1d5ca6686659d99957e787e74d5e6a4bc4c30c1b GIT binary patch literal 4608 zcmeHKUu+yl8UOZtcI~vWl2Fn=fp&6Epmpl?ozDtRYA0vk*};_^8{fs?^hC0^H$HE? zx4W6$b?%CUg7~Kjfx;V7E8q=PR45OTXhHlDJXN9La2wzK=d4dJVm71%>|^Zen`)$zKf9ouN06zosp{ zdAzb^`OFh;Ll{kF8jj-ztj3uL9cDSKv{GhGx6bv02M?TxRjToX zKW27!SBV}1{in|meX5)P-^Q%tx{@3O{rRpndca!&=sOPpFsI^-{RX8PBf6>!Uznhj zZv_kn@EyR{)e1<6F1YPNQ2I(&@kw0>y}K2N=DKM)z9sXDCVfj$KeZT99X8~d&?0LX z-G3VxeIoVLVYoPYq%ZxY(b2wiHgy!ZA?eGVNt!D^H>XJpXwv7MNj}E> zSU?OTUnP1K{SV~090<#4_)?;Ty^_acPZb;rjn)+Ptw%Q?lcLKJMOWxyP*-Bg1eK<1G1UMyKyKGMnN^Lp z6?(uFiF=L@(*`|Gk10H^@M(oPg=ZAbDqK|f1%(^HC&^G_OW}2eZQu!d5jcv7WDG+J zb$XD-NkZ4nP*%aDX*81zrhupH7&DLY%QQ#q{Ba%htwaJ&slr1iDX39Kg9*SYX5 z*TLzh3S@Y&fC|fRxMF)Yz#l~|40vonU*nrLEI^uOeV;dLcDrH)Hs2LY*d^|p!t$hO z?_|++Hmyb|jC)NtJ;Q1Du0v+(p&9f}6kV?^tj5+|rYgdy^QO@qOyXlPw1ZG|IUl95 zlbA&ZX?DFb7dw{8eJZ-mb<4ME-SJ)st$MFNaY}n97A%|hOvYwQmeFurKd?-nO1u^} z8pa+|5f9sh69aGdISc1JC>Pz{f}v8p#%-geM*gl#@%GDgn5tQ}6?CPX`j|SQ|GfI0 z4}X38%k!_lwDSAhPv0M8>MwQ`*J5wdg_iUqm5r^-PT*EpuY;s7WwEP1>`Bs(l5si*? zHl6+M6~-pAxe21DH9C>c=O*$7pBOux&z~8aJZ)yjrfT`gG4sqsE@xn}zIhrKgGLYJ za4+CTRdiJsWoef+is%Vh3@fRlUlfLS(RJoqCRc~KvL)ObepJ1acZFPv>ybXdJ^lff zua!&X;p;PR|M{u+3wOlJeC~~BpO-71J6oM|-RSR#e9pa0-=fr z=X%|i_aR)*&@;3qG`psm6}AqPG#I;>oiYm7%k$(b`kUCh&*O5_B|RTaz{;QE+1aQ9o7bz&8_)Bk`{4L${svcPZL zMbjUYOqPpsq?)Z^{3Q=~1(V>i&UIQv@1#yZvrtlIS{hx;wt z`J{~@$jhh#CF>vt8+kLR37T+UM!I!SEya;8-buv5Bb`r0o?(M@fDmSZG>r$OUTSwWS$y}-|j7?>j zuigZ<>+qROoBNsb=MEm2Hsbr3L4o7XWJ2Mb_026@eg0U}GKK5Ao57grHqRP$CDibAy3xF Upt0!xuiKyd7{vPj5PLH4Z|gwt>i_@% literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch08/bin/Release/Ch08.exe.config b/9781430248606_sourcecode/Ch08/bin/Release/Ch08.exe.config new file mode 100644 index 0000000..e365603 --- /dev/null +++ b/9781430248606_sourcecode/Ch08/bin/Release/Ch08.exe.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch08/bin/Release/Ch08.pdb b/9781430248606_sourcecode/Ch08/bin/Release/Ch08.pdb new file mode 100644 index 0000000000000000000000000000000000000000..de1d2da43ac7d13f9dd5eb67d32c04040d2c545c GIT binary patch literal 13824 zcmeHNU2GIp6h5<*(jQt}z$zuyRf{Q9cDJQUgSCH4E0t~vSx8Vfw%gq)EZy#u*{znu zhiZ&5CYI~Gu>wi z`9%-`j#qYfSoU`wOb8G|A^@5JEo{!?q-$h>S z{A{xI`&Z15kKwfelsbHN^0!|r8h={4de!+iPSjbY_H(f#uu${AWAyFPD?7hVT-yES z@@>WE-e2r~+vA&#z$%$la(b?{>@acxFqm)iC;lZNr1Qne;tU>#eB` z28o8gmrd!Xy>p(ITkA%#KFBA(8#X?EL#3<%Jh=jBgo@Qqm!|^h6BlBryMS!V^d8sP6 z%jMcjUhO3N@WP3Uhj#nF(dPS}&*5RhyCT{ZGJ}9u6*Fva|KXp3J)F+OQs=xPV5xLB zu0OQ~y08V@QJ1O9S(_FZ0nDA7HaKB6DQ%-n5yuDeF&|=Gv_v8(Z=}4uGfkH#K7ICL z$EkINj;}r$?LoPpwo)z2JYE#Afp~{M2liO8FI~rSq-yqn% zU!;f%h(=1NoRqHRn>OWhrf!MQeRN9K8sp4%S4z8oaX;LL*kkAt{koX(65h$&!#vFV z7W2)7@v8Y(b0IL1ik!|zQk3~a(Kx5eXo(Z;-c{vN7Ez^hci>ruv6voC zMvZvF{j?s}&1jfbX4H2^;|JKpw6b0Luvm_m$J+lg_uO8sH;fJK6yC6nxlw*Ws=49y zGE&Ghp)gcB!1Dz2=giqm_@*x}^jvFZCo6fgKEx6jJTB!yDg9D@DCHMYhNL_!CAl~; z3uy&nsm`K7vzoxz?j+4+f3EsFIkvmWHt#F3$0}KRnH!k5G4EowY4IRXL8apE=XK5J zysyh&-Q5;Xng_dg7|}SNz$jj{U)@PJ?pYVb?KnbhTjD02)NS(lK~#ke$*x-|=qE3N^XYy`3v0hfGNPdn%hBCQX&2i3a) zHbDXF;qJ?^`!DPFKj!$Q!W!}2&v*8r5;9&a{y+uv?O8H#C^k&F)(Ft#Kl%tKZySv#G9)+im>PeNCDXHZ0reC+fhsXFy63wN)LaW_jknm4D!T71A2ly2{Y{3 zr-vfC*&8#${Z>I=ltaRv`3GM!BEZ7%?b?|+h^say7U*6H`F@r-)$s-^A{#8RNwJBc z|1dLxzd1rUqYw*ufHA6P*)Pu^#LP}|evjlTmXlmo$(&@JX6AEThW|fwFEgOT8Mc}k zP!=--MnH|YFun&lwne4P=#yhtVhRwmvFZOq0Qb2~HUc&RHUc&RHUc&RxrM;L*?C1; literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch08/obj/x86/Debug/Ch08.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch08/obj/x86/Debug/Ch08.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..fa15ddd --- /dev/null +++ b/9781430248606_sourcecode/Ch08/obj/x86/Debug/Ch08.csproj.FileListAbsolute.txt @@ -0,0 +1,5 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch08\bin\Debug\Ch08.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch08\bin\Debug\Ch08.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch08\bin\Debug\Ch08.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch08\obj\x86\Debug\Ch08.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch08\obj\x86\Debug\Ch08.pdb diff --git a/9781430248606_sourcecode/Ch08/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch08/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..1a545027389f21ab4bfc29c11f39ba796d29d325 GIT binary patch literal 6630 zcmeHMdruoj5VyfxFoYJ)hSSZzlC!DkS6XdOB^S@RQVYo})ZL*InuTNMA3dva@wlNncbZ z6_7o+Br9;o27jL-vrI&ds$f{jt4ONegA)0Y)m$!Uo>mEjV#}2Z=6623uHsj>cj~I^ zc74chR`KK-|Kcd!0Y9a>GR-^_)KXk9DyJK^BBDfzu#R_#I+oM5D~!p8;8lnadNm_x zjY%b1=L6#4n4%cMIZ$*l7#FO}UJ-3`mz_}Y{APBZ$%aE(Xz=R5UZTx+2kr=NQ7O52 z4YOwoe1eqg4WV|?a}}%8-jJ)Bx>1tah&HNek;o{}k!Uok!58SCW2KfBH;JHT zfM8AI{bo4;hRM@KV=383l|2NxdDhWB0X^PNYvu;$C+6lEpjwrCv5-nHm?iEBi{`jZ z&DE7`dNGq)Sj;Y`mJg*buuzaYPGwDA`OQ4bE}MB;@oGRNfXXrepCXmqISo*5kyfdo zE&wLOBGxgDe~Nxg1DU%#)jpWVDQgLk&!Aine9@6V1N@lZ<1=^~1^e0qc$ffI%E+WL z>DBn>@OJ{ki(hRPiP24ZywbV|_D-h2C2dK*AT6E^zhoBAV#$c{d|hIwqpw`!Nq@eht-3A0qndzX0`S zsOkgkDyVPa30QCkVIfZxF_4s~I=_<>DAc-pNwf#mO4aGG7e ztPgMESZ(`Y(O?jHANJyhd@tEQ7$1*+38!AaB@pvr{ZV@XWINOoH-S*n*ZmS6Vg;xf zMiEx}So7i}qKGrEaT5qUu_X|EqAu+#AdlL)8;h77?Q4+EwBImSVKuKHpk@l2rlWlW z{JD1d<_cY_qkRkVAKH7&-OdN-^d?jr;9I?ve=AKGVDqL-t{AC~_6l@_fr-BZJyY!> zX(Cv|Dqu%T0_!6|VTHLph@3#=i{M}T9!R+Btr?*5=TK9qKrCVdK20E?#&*xo8%!!} Vqkj#LzyJDY!|?bE%Ebqh{{q4vmZ|^% literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch08/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/9781430248606_sourcecode/Ch08/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch08/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/9781430248606_sourcecode/Ch08/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch08/obj/x86/Release/Ch08.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch08/obj/x86/Release/Ch08.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..201118d --- /dev/null +++ b/9781430248606_sourcecode/Ch08/obj/x86/Release/Ch08.csproj.FileListAbsolute.txt @@ -0,0 +1,6 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch08\bin\Release\Ch08.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch08\bin\Release\Ch08.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch08\bin\Release\Ch08.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch08\obj\x86\Release\ResolveAssemblyReference.cache +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch08\obj\x86\Release\Ch08.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch08\obj\x86\Release\Ch08.pdb diff --git a/9781430248606_sourcecode/Ch08/obj/x86/Release/Ch08.exe b/9781430248606_sourcecode/Ch08/obj/x86/Release/Ch08.exe new file mode 100644 index 0000000000000000000000000000000000000000..1d5ca6686659d99957e787e74d5e6a4bc4c30c1b GIT binary patch literal 4608 zcmeHKUu+yl8UOZtcI~vWl2Fn=fp&6Epmpl?ozDtRYA0vk*};_^8{fs?^hC0^H$HE? zx4W6$b?%CUg7~Kjfx;V7E8q=PR45OTXhHlDJXN9La2wzK=d4dJVm71%>|^Zen`)$zKf9ouN06zosp{ zdAzb^`OFh;Ll{kF8jj-ztj3uL9cDSKv{GhGx6bv02M?TxRjToX zKW27!SBV}1{in|meX5)P-^Q%tx{@3O{rRpndca!&=sOPpFsI^-{RX8PBf6>!Uznhj zZv_kn@EyR{)e1<6F1YPNQ2I(&@kw0>y}K2N=DKM)z9sXDCVfj$KeZT99X8~d&?0LX z-G3VxeIoVLVYoPYq%ZxY(b2wiHgy!ZA?eGVNt!D^H>XJpXwv7MNj}E> zSU?OTUnP1K{SV~090<#4_)?;Ty^_acPZb;rjn)+Ptw%Q?lcLKJMOWxyP*-Bg1eK<1G1UMyKyKGMnN^Lp z6?(uFiF=L@(*`|Gk10H^@M(oPg=ZAbDqK|f1%(^HC&^G_OW}2eZQu!d5jcv7WDG+J zb$XD-NkZ4nP*%aDX*81zrhupH7&DLY%QQ#q{Ba%htwaJ&slr1iDX39Kg9*SYX5 z*TLzh3S@Y&fC|fRxMF)Yz#l~|40vonU*nrLEI^uOeV;dLcDrH)Hs2LY*d^|p!t$hO z?_|++Hmyb|jC)NtJ;Q1Du0v+(p&9f}6kV?^tj5+|rYgdy^QO@qOyXlPw1ZG|IUl95 zlbA&ZX?DFb7dw{8eJZ-mb<4ME-SJ)st$MFNaY}n97A%|hOvYwQmeFurKd?-nO1u^} z8pa+|5f9sh69aGdISc1JC>Pz{f}v8p#%-geM*gl#@%GDgn5tQ}6?CPX`j|SQ|GfI0 z4}X38%k!_lwDSAhPv0M8>MwQ`*J5wdg_iUqm5r^-PT*EpuY;s7WwEP1>`Bs(l5si*? zHl6+M6~-pAxe21DH9C>c=O*$7pBOux&z~8aJZ)yjrfT`gG4sqsE@xn}zIhrKgGLYJ za4+CTRdiJsWoef+is%Vh3@fRlUlfLS(RJoqCRc~KvL)ObepJ1acZFPv>ybXdJ^lff zua!&X;p;PR|M{u+3wOlJeC~~BpO-71J6oM|-RSR#e9pa0-=fr z=X%|i_aR)*&@;3qG`psm6}AqPG#I;>oiYm7%k$(b`kUCh&*O5_B|RTaz{;QE+1aQ9o7bz&8_)Bk`{4L${svcPZL zMbjUYOqPpsq?)Z^{3Q=~1(V>i&UIQv@1#yZvrtlIS{hx;wt z`J{~@$jhh#CF>vt8+kLR37T+UM!I!SEya;8-buv5Bb`r0o?(M@fDmSZG>r$OUTSwWS$y}-|j7?>j zuigZ<>+qROoBNsb=MEm2Hsbr3L4o7XWJ2Mb_026@eg0U}GKK5Ao57grHqRP$CDibAy3xF Upt0!xuiKyd7{vPj5PLH4Z|gwt>i_@% literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch08/obj/x86/Release/Ch08.pdb b/9781430248606_sourcecode/Ch08/obj/x86/Release/Ch08.pdb new file mode 100644 index 0000000000000000000000000000000000000000..de1d2da43ac7d13f9dd5eb67d32c04040d2c545c GIT binary patch literal 13824 zcmeHNU2GIp6h5<*(jQt}z$zuyRf{Q9cDJQUgSCH4E0t~vSx8Vfw%gq)EZy#u*{znu zhiZ&5CYI~Gu>wi z`9%-`j#qYfSoU`wOb8G|A^@5JEo{!?q-$h>S z{A{xI`&Z15kKwfelsbHN^0!|r8h={4de!+iPSjbY_H(f#uu${AWAyFPD?7hVT-yES z@@>WE-e2r~+vA&#z$%$la(b?{>@acxFqm)iC;lZNr1Qne;tU>#eB` z28o8gmrd!Xy>p(ITkA%#KFBA(8#X?EL#3<%Jh=jBgo@Qqm!|^h6BlBryMS!V^d8sP6 z%jMcjUhO3N@WP3Uhj#nF(dPS}&*5RhyCT{ZGJ}9u6*Fva|KXp3J)F+OQs=xPV5xLB zu0OQ~y08V@QJ1O9S(_FZ0nDA7HaKB6DQ%-n5yuDeF&|=Gv_v8(Z=}4uGfkH#K7ICL z$EkINj;}r$?LoPpwo)z2JYE#Afp~{M2liO8FI~rSq-yqn% zU!;f%h(=1NoRqHRn>OWhrf!MQeRN9K8sp4%S4z8oaX;LL*kkAt{koX(65h$&!#vFV z7W2)7@v8Y(b0IL1ik!|zQk3~a(Kx5eXo(Z;-c{vN7Ez^hci>ruv6voC zMvZvF{j?s}&1jfbX4H2^;|JKpw6b0Luvm_m$J+lg_uO8sH;fJK6yC6nxlw*Ws=49y zGE&Ghp)gcB!1Dz2=giqm_@*x}^jvFZCo6fgKEx6jJTB!yDg9D@DCHMYhNL_!CAl~; z3uy&nsm`K7vzoxz?j+4+f3EsFIkvmWHt#F3$0}KRnH!k5G4EowY4IRXL8apE=XK5J zysyh&-Q5;Xng_dg7|}SNz$jj{U)@PJ?pYVb?KnbhTjD02)NS(lK~#ke$*x-|=qE3N^XYy`3v0hfGNPdn%hBCQX&2i3a) zHbDXF;qJ?^`!DPFKj!$Q!W!}2&v*8r5;9&a{y+uv?O8H#C^k&F)(Ft#Kl%tKZySv#G9)+im>PeNCDXHZ0reC+fhsXFy63wN)LaW_jknm4D!T71A2ly2{Y{3 zr-vfC*&8#${Z>I=ltaRv`3GM!BEZ7%?b?|+h^say7U*6H`F@r-)$s-^A{#8RNwJBc z|1dLxzd1rUqYw*ufHA6P*)Pu^#LP}|evjlTmXlmo$(&@JX6AEThW|fwFEgOT8Mc}k zP!=--MnH|YFun&lwne4P=#yhtVhRwmvFZOq0Qb2~HUc&RHUc&RHUc&RxrM;L*?C1; literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch08/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch08/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..570b1ece87f9c36168268db4820aac26b2729c58 GIT binary patch literal 5705 zcmeHLdruoj5VyfxFoYJ7X-mdERz-Fe;I&TlsskHupDVxwPbcZZO;uel?I5>;*O za1}7Gqyv`=D<|r8;cw;(X>$jp;=*6cW~}g&Hgkce0|{$B1X?mLZEgn@k2}9Wt1OPd zU#n#1tBcj8YBuXGX4pI%A(hMT(X<|L&n11Ez6L28ZzXFqKw3p6H~mJS)if@C$UIM+ zfcsJ@s8_sJp{cV+EefI z>qR_zXZ+$S(?dU%zG7ycOK`N19MojP)l8OvN#}5z=|eT%kfMqKAt$CJ)VR{JbG0i}d|iNSfHuXdJEzhYQzd(c(lEX;Gk_qaL5W$@`mb`<6 zhDYg7lE@emV;o7$xQk@{wAiULt0hDkCrpAJApzTZQz%CTHhqj+XS!RRJC(T5JToRx z&e5w?dtHblyU;{*pmSf%WwLX2Nd(e?oNysz7MiTyz?yF74l~QPsQhj>mtWXL@PH|> z^PsRKm$8l%K?(0T!U#pEf&?GykL57u5R#ve^`9b{xolt;3X!44B=RSTZ$=)N3q}e@ z6Cr;Jd&8*T_zXK^G-S$V@bR7_ zCbFCm6d4at0?V!1SYK-hfXomNVMsb2o1JhYTDb67B8M(NAe)>xpJwGshfFp?+aIEu z-+HR1TUbN!GbrBfsrabkO9(a0q6WVo8uCmti%1FdIcyDee$g+lLYatTsKC8C8SGKHF!u3WR97SWivJ0t z`^W8bIdc9EF?d(`Sj-rsU?xVtwxnlv$?x-CUej_zoTr%1MXx#Ok? zAcms9#7<%ZuT|oN6+;ARVyD|u1RklSLI8;!;~A0%r@3oybk2;gkvnzzGxs%JZEQ%q zK*G1<%=iY!XHLu4-(R%OjBk + + + Debug + x86 + 8.0.30703 + 2.0 + {8D8C5025-7DE6-4199-BD89-2AA6D0F57FB6} + Exe + Properties + Ch09 + Ch09 + v4.5 + + + 512 + + + x86 + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + true + false + + + x86 + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + false + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch09/Listing 9-1.cs b/9781430248606_sourcecode/Ch09/Listing 9-1.cs new file mode 100644 index 0000000..ff6642a --- /dev/null +++ b/9781430248606_sourcecode/Ch09/Listing 9-1.cs @@ -0,0 +1,21 @@ +//using System; +//using System.Collections.Generic; + +//namespace Ch09 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List +// { +// 1,2,3,4,4,6,7,8,9,10 +// }; + +// foreach (int number in numbers) +// { +// Console.Write("{0}\t", number); +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch09/Listing 9-3.cs b/9781430248606_sourcecode/Ch09/Listing 9-3.cs new file mode 100644 index 0000000..bd85842 --- /dev/null +++ b/9781430248606_sourcecode/Ch09/Listing 9-3.cs @@ -0,0 +1,34 @@ +//using System; +//using System.Collections; + +//namespace Ch09 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// int currentExponent = 0; +// int iterationPhase = 0; +// Console.WriteLine("{0,10}\t{1,10}\t{2,10}", +// "Iteration Phase", "Power", "Next Power will be"); +// foreach (int i in Power(2, 4)) +// { +// currentExponent = i; +// Console.Write("{0,9}\t{1,9}", +// ++iterationPhase, currentExponent); +// } +// } + +// public static IEnumerable Power(int number, int exponent) +// { +// int counter = 0; +// int result = 1; +// while (counter++ < exponent) +// { +// result = result * number; +// yield return result; +// Console.WriteLine("\t{0,9}x{1}\t\u25BC", result, number); +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch09/Program.cs b/9781430248606_sourcecode/Ch09/Program.cs new file mode 100644 index 0000000..309c0fa --- /dev/null +++ b/9781430248606_sourcecode/Ch09/Program.cs @@ -0,0 +1,21 @@ +using System; +using System.Collections.Generic; + +namespace Ch09 +{ + class Program + { + static void Main(string[] args) + { + IList numbers = new List + { + 1,2,3,4,4,6,7,8,9,10 + }; + + foreach (int number in numbers) + { + Console.Write("{0}\t", number); + } + } + } +} diff --git a/9781430248606_sourcecode/Ch09/Properties/AssemblyInfo.cs b/9781430248606_sourcecode/Ch09/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..546f36d --- /dev/null +++ b/9781430248606_sourcecode/Ch09/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Ch09")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Ch09")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("b5b17faa-9286-49be-8a5d-34052dda628f")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/9781430248606_sourcecode/Ch09/app.config b/9781430248606_sourcecode/Ch09/app.config new file mode 100644 index 0000000..c5e1dae --- /dev/null +++ b/9781430248606_sourcecode/Ch09/app.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch09/bin/Debug/Ch09.vshost.exe b/9781430248606_sourcecode/Ch09/bin/Debug/Ch09.vshost.exe new file mode 100644 index 0000000000000000000000000000000000000000..212bd7f4bd85638db6f1427777e53df0c87cd21a GIT binary patch literal 22392 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 + + diff --git a/9781430248606_sourcecode/Ch09/bin/Debug/Ch09.vshost.exe.manifest b/9781430248606_sourcecode/Ch09/bin/Debug/Ch09.vshost.exe.manifest new file mode 100644 index 0000000..061c9ca --- /dev/null +++ b/9781430248606_sourcecode/Ch09/bin/Debug/Ch09.vshost.exe.manifest @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/9781430248606_sourcecode/Ch09/bin/Release/Ch09.exe b/9781430248606_sourcecode/Ch09/bin/Release/Ch09.exe new file mode 100644 index 0000000000000000000000000000000000000000..a6b598767f68ecad6b2600acd2374b96396dbba1 GIT binary patch literal 4608 zcmeHKO>7&-6@E)mvTWCa?WE36+hj~RZX-u4>c@`ciV-PNa+ylDD$+_~u&|c9Lu#Y_ z%l;^23KS}u2FM|WatR6)EpjT5q6h-SK!X%TfdaYJhh7X6D3F|r{v6VuOVC5pZ)TSi z_2V=>^puV?-^_b&-kbN{tlo^4Z|qPX5v9>T{+Q?;jH2Zwell!BJoNCpLv-ut?X&MF zOSjKfH_U)}zT5OQo9UY4xFM@^=0^@Q9ag$lVYX{<^~8x|=MvK^3q(swAKkw2{*&H3Lho&PqWNB0%y&dy(S&a)>ZcYXGO&mECXf!X z+ke$g_obg68R<)BQ)htBjDWr|@=)q4r{ML-KzBy-l_%#FQlxF+^VXD_RVTBP<1>QQ zPZltb7>2)1^fQb<5c5jtn@%$jD@t%qd>+HsE3|~U2zB_%^>PVgO~_z+c;0gBphbha za^>?xM+NcEM<(eE7?_?$7qN;!#Zkad8bTMc*t=uNI6%v^h;=Vf2>g-6cP0K#;@>46 zSA_Ju#Dc`Oazh!QS0w&Wa&Afdi}G9W?@Ogqb94dj4bY9$<_B&Y%dAtS9faJbYxQTj9#X+Ds1ns_IkHIAh5oW;I;2sZG#{UMyjor54GYUn z*P%iXaJz1`t7d5NLWnh5K8k&I2mC_L>=(_1<`| zM5b}j@*4MpLnB`_Eq*|_Z`(wU(n3`vpNEUMzWDQQZwQG>$<&&T8-%7FP>I*0W>eea zUCe_ed@%@M-$sbXgFk+6fMCc|S>=}2lCxkpywx}{LJy+4X_;ZqDN!GjU+8P)o#^(9 z?-k$v=6gTAQ~$#{4gUOv+S&tCAH3YpQiFqoSf-$MC|?>%Gewb*>c{Lo*vi$c|4CJ*v>T`o;SA;|)z4otc=vG&(g?=cCiwMPqbwDtmFl zFtke((+ylg3LP0oJ;x8x6@?yDuP#)(NqsEIcTUuNg{njMc10yK@GPx;73n`IbXZry zrclvkT@#Ow}{$L@y?HE6mc5#hi)R!PdEhW68~;>o2spEC;f9aIPAb zxDW9{dxThC&i*%$Lba7{Zr_g)6>)p-KJoptau@!_A$*~~&j>j2+3aBUdLC~OaX3lK z7K#2GizR0#HHC4FDs&ULK&zOQ@nX9Qx(r;5UvKow^oRe7?RJ#oaW1hdDtkwgu&5+? zYbd%t?3j3SaM*NkC%SUUITBh`NHuT+$Ti&YCZtYc;;r;wVN`)nAy%2-HxIG&8@VQn zTRZ-lLXpQG22II3yt8u&y9fA2g&l9tK1JHVdigNIIEei^I&0AJp|$JNIPSM>w~IZF zV!enelxxKmV3OYKK#Y6X6IVA#kS%bCznB?%P{Wfu7R?j%UrK6j!tJ-ARh>p z>+oEr&4bL`6DN+%YRMJOV897-naFo82l@tX%V5+tb>9u#MmVaw_GK-w)vfUivo*(T z@F47zOt~9OG1fI!HaKq2u)W74QF=4XK^@IymfHo-vrJuHE~@5vnX%YH=tn_Vb{g)d z^k*U?^{{uq^~lGb2@Q_VpNrrpH&%Re3wK + + diff --git a/9781430248606_sourcecode/Ch09/bin/Release/Ch09.pdb b/9781430248606_sourcecode/Ch09/bin/Release/Ch09.pdb new file mode 100644 index 0000000000000000000000000000000000000000..a30cc65ff5d6d065a39290c6b95a920eb1d9ab15 GIT binary patch literal 13824 zcmeHNYiv|S6h3#Ur4L%zs#R&kRf|EYyW0oPfPE~*R@m@ZNYHFTw|8&t+U?$YcdI4- zDaQB%H6etU5Y*rcf7tj3VtkP_MoBa_5K;b`AR*!p5aCDtgPw05-K{jmB_yred&;?I z=FFKhbH157Gk2D7!gTDk-IMW!0-?G(UpTVSx5^(3R+KH?5FsXy_(wIIdG`<(3v+^+Gj89Z4-FO_`VcK)4f zqwB}6&i1(7{!K>UPL$c4Xhq@R*VBIiIhG31>wyhZGjTYZ)_qZ~FPK{#~kEV`(Wn2;i!1f8Bff z0&IaVY*ChL%UPFhGXfYpKP~sdZLjhTohBaFVx+~qXpP5_ZlI!~@0x!2dV z&b6%&wvSBM%05o*w@UfF#_ez$G8WaYk7X0{X67#DA?DYarz7-BkIQ*wsGt)$UgwIr zP1#O3mPm2Bn&x>??}*at@-nLR?u_h7XRLl&l1=+Vb~0(1nS`B6`=7K@mXk24DyMvN zBK17Gnxxxd4P~Iim_Bi{dBBql{n7Ic=_1eMd7;Na_7$ThDR&%r9u1fB2x)8&C>!AX z0rO`nUq}Mq^ovUaS6VozTE;QP5|})wBZ>0ae7YM7QHxEnCm($(F@T`K=)}26g*& znTL0=3W13+@tYd%UGa{AFeX~U7O3ejmJZJ4e=Bw)wzwe6-%rl%8uvrr9jZ{!Wl0D? zQmF_=rgf<+XAuI^{r-P~`x)Sm^S;hhk4=G8tlvsgAnlleUMm*2obIG;_DMxgg0F-F z`QNxseeEmSxK)=qm$-bW6)!F(=t?n5iEwfiH(D(5;y%QT%U-}m~l?W{~x-W8IWQPyNel6mNNrZKv~Mn qdkgVB7h%0bn^+q$6pNT$nmGippS$ED;3D86;3D86;36=$5cmfxHcSx! literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch09/obj/x86/Debug/Ch09.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch09/obj/x86/Debug/Ch09.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..3660a5a --- /dev/null +++ b/9781430248606_sourcecode/Ch09/obj/x86/Debug/Ch09.csproj.FileListAbsolute.txt @@ -0,0 +1,5 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch09\bin\Debug\Ch09.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch09\bin\Debug\Ch09.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch09\bin\Debug\Ch09.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch09\obj\x86\Debug\Ch09.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch09\obj\x86\Debug\Ch09.pdb diff --git a/9781430248606_sourcecode/Ch09/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch09/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..14c02fa665c1283e00f49c5a20f1897fa3b25507 GIT binary patch literal 6630 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 literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch09/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch09/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..e4aef6fc7696f251d4939ec299aa4765ffefb71a GIT binary patch literal 5705 zcmeHLdruoj5VyfxFoYJ7X-mdERz-Fe;I&TlsskHupDVxwPbcZZO;uel?I5>;*O za1}7Gqyv`=D<|r8;cw;(X>$jp;=*6cW~}g&Hgkce0|{$B1X?mLZEgn@k2}9Wt1OPd zU#n#1tBcj8YBuXGX4pI%A(hMT(X<|L&n11Ez6L28ZzXFqKw3p6H~mJS)if@C$UIM+ zfcsJ@s8_sJp{cV+EefI z>qR_zXZ+$S(?dU%zG7ycOK`N19MojP)l8OvN#}5z=|eT%kfMqKAt$CJ)VR{JbG0i}d|iNSfHuXdJEzhYQzd(c(lEX;Gk_qaL5W$@`mb`<6 zhDYg7lE@emV;o7$xQk@{wAiULt0hDkCrpAJApzTZQz%CTHhqj+XS!RRJC(T5JToRx z&e5w?dtHblyU;{*pmSf%WwLX2Nd(e?oNysz7MiTyz?yF74l^sZsQhj>mtWXL@PH|> z^PsRKm$8l%K?(0T!U#pEf&?GykL57u5R#ve^`9b{xolt;3X!44B=RSTZ$=)N3q}e@ z6Cr;Jd&8*T_zXK^G-S$V@bR7_ zCbFCm6d4at0?V!1SYK-hfXomNVMsb2o1JhYTDb67B8M(NAe)>xpJwGshfFp?+aIEu z-+HR1TUbN!GbrBfsrabkO9(a0q6WVo8uCmti%1FdIcyDee$g+lLYatTsKC8C8SGKHF!u3WR97SWivJ0t z`^W8bIdc9EF?d(`Sj-rsU?xVtwxnlv$?x-CUej_zoTr%1MXx#Ok? zAcms9#7<%ZuT|oN6+;ARVyD|u1RklSLI8;!;~A0%r@3oybk2;gkvnzzGxs%JZEQ%q zK*G1<%=iY!XHLu4-(R%OjBk + + + Debug + x86 + 8.0.30703 + 2.0 + {0B6F3810-D7CB-497A-923B-D38CF61EAD44} + Exe + Properties + Ch10 + Ch10 + v4.5 + + + 512 + + + x86 + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + false + + + x86 + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch10/Listing 10-10.cs b/9781430248606_sourcecode/Ch10/Listing 10-10.cs new file mode 100644 index 0000000..b9aae83 --- /dev/null +++ b/9781430248606_sourcecode/Ch10/Listing 10-10.cs @@ -0,0 +1,14 @@ +//using System; + +//namespace Ch10 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// string myString = " Expert C# 5.0: with the .NET 4.5 Framework by Mohammad A Rahman "; +// myString = myString.ToUpper().ToLower().Trim(); +// Console.WriteLine(myString); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch10/Listing 10-11.cs b/9781430248606_sourcecode/Ch10/Listing 10-11.cs new file mode 100644 index 0000000..b2c8a51 --- /dev/null +++ b/9781430248606_sourcecode/Ch10/Listing 10-11.cs @@ -0,0 +1,23 @@ +//using System; + +//namespace Ch10 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Console.WriteLine(ConcatUsingOperator()); +// Console.WriteLine(ConcatUsingOperator("One,", "Two,", "Three")); +// } + +// static string ConcatUsingOperator() +// { +// return "One," + "Two," + "Three."; +// } + +// static string ConcatUsingOperator(string one, string two, string three) +// { +// return one + two + three; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch10/Listing 10-14.cs b/9781430248606_sourcecode/Ch10/Listing 10-14.cs new file mode 100644 index 0000000..fda7ade --- /dev/null +++ b/9781430248606_sourcecode/Ch10/Listing 10-14.cs @@ -0,0 +1,23 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; + +//namespace Ch10 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList listOfNumbers = new List() +// { +// "One,", "Two,", "Three." +// }; +// Console.WriteLine("{0}", ConcateUsingConcate(listOfNumbers)); +// } + +// static string ConcateUsingConcate(IEnumerable enumerable) +// { +// return string.Concat(enumerable); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch10/Listing 10-16.cs b/9781430248606_sourcecode/Ch10/Listing 10-16.cs new file mode 100644 index 0000000..2c27c7e --- /dev/null +++ b/9781430248606_sourcecode/Ch10/Listing 10-16.cs @@ -0,0 +1,20 @@ +//using System; + +//namespace Ch10 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Console.WriteLine("{0}", ConcatUsingConcat(new[] +// { +// "One,", "Two,", "Three." +// })); +// } + +// static string ConcatUsingConcat(params object[] args) +// { +// return string.Concat(args); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch10/Listing 10-19.cs b/9781430248606_sourcecode/Ch10/Listing 10-19.cs new file mode 100644 index 0000000..a1170d7 --- /dev/null +++ b/9781430248606_sourcecode/Ch10/Listing 10-19.cs @@ -0,0 +1,18 @@ +//using System; + +//namespace Ch10 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Console.WriteLine("{0}", +// ConcatUsingConcat("Expert C# 5.0: with the .NET 4.5 Framework ", " by Mohammad Rahman")); +// } + +// static string ConcatUsingConcat(object args0, object args1) +// { +// return string.Concat(args0, args1); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch10/Listing 10-2.cs b/9781430248606_sourcecode/Ch10/Listing 10-2.cs new file mode 100644 index 0000000..8de79a3 --- /dev/null +++ b/9781430248606_sourcecode/Ch10/Listing 10-2.cs @@ -0,0 +1,27 @@ +//using System; +//using System.Text; +//namespace Ch10 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// string bookName = "Expert C# 5.0: with the .NET 4.5 Framework"; +// /* CLR will create a String with - by repeating the number +// * of the Length of the bookName string .*/ +// string dashedLine = new string('-', bookName.Length); +// StringBuilder sb = new StringBuilder("by Mohammad Rahman"); + +// Console.WriteLine("{0}\n{1}\n{2}", +// bookName, /* C# Compiler include the String Literal +// * used in bookName in metadata */ +// dashedLine, /* C# Compiler does not include the +// * String Literal used in dashedLine +// * in metadata */ +// sb.ToString()); /* C# Compiler include the String Literal +// * used in the constructor in metadata and +// * will construct the String at runtime +// * using StringBuilder */ +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch10/Listing 10-21.cs b/9781430248606_sourcecode/Ch10/Listing 10-21.cs new file mode 100644 index 0000000..4a15e4b --- /dev/null +++ b/9781430248606_sourcecode/Ch10/Listing 10-21.cs @@ -0,0 +1,18 @@ +//using System; + +//namespace Ch10 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Console.WriteLine("{0}", +// ConcatUsingConcat("Expert C# 5.0: with the .NET 4.5 Framework ", " by Mohammad Rahman")); +// } + +// static string ConcatUsingConcat(string str0, string str1) +// { +// return string.Concat(str0, str1); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch10/Listing 10-23.cs b/9781430248606_sourcecode/Ch10/Listing 10-23.cs new file mode 100644 index 0000000..2900803 --- /dev/null +++ b/9781430248606_sourcecode/Ch10/Listing 10-23.cs @@ -0,0 +1,16 @@ +//using System; +//using System.Text; + +//namespace Ch10 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// StringBuilder sb = new StringBuilder(); +// sb.Append("Expert C# 5.0: with the .NET 4.5 Framework "); +// sb.Insert(sb.Length, "by Mohammad A Rahman"); +// Console.WriteLine(sb.ToString()); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch10/Listing 10-28.cs b/9781430248606_sourcecode/Ch10/Listing 10-28.cs new file mode 100644 index 0000000..fca1bc2 --- /dev/null +++ b/9781430248606_sourcecode/Ch10/Listing 10-28.cs @@ -0,0 +1,69 @@ +//using System; +//using System.Text; + +//namespace Ch10 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Console.WriteLine("{0}", ConcatUsingStringBuilder( +// "Expert C# 5.0: with the .NET 4.5 Framework ", +// "by Mohammad Rahman")); +// Console.WriteLine("{0}", ConcatUsingStringBuilder()); +// } + +// static string ConcatUsingStringBuilder(string str0, string str1) +// { +// StringBuilder builder = new StringBuilder(); +// builder.Append(str0).Append("\t"); +// builder.Append(str1).Append("\t"); +// return builder.ToString(); +// } + +// static string ConcatUsingStringBuilder() +// { +// StringBuilder builder = new StringBuilder(); + +// bool boolValue = true; +// byte byteValue = 1; +// char charValue = 'A'; +// decimal decimalValue = 10; +// double doubleValue = 100; +// short shortValue = 1000; +// char[] charArrayValue = new char[] { 'A', 'B', 'C' }; +// int intValue = 10000; +// long longValue = 100000; +// object objectValue = new object(); +// sbyte sByteValue = 2; +// float floatValue = 200; +// string stringValue = "Expert C# 5.0: with the .NET 4.5 Framework"; +// ushort ushortValue = 10; +// uint uintValue = 4; +// ulong ulongValue = 400; + +// builder +// .Append(boolValue).Append("\t") +// .Append(byteValue).Append("\t") +// .Append(charValue).Append("\t") +// .Append(decimalValue).Append("\t") +// .Append(doubleValue).Append("\t") +// .Append(shortValue).Append("\t") +// .Append(charArrayValue).Append("\t") +// .Append(intValue).Append("\t") +// .Append(longValue).Append("\t") +// .Append(objectValue).Append("\t") +// .Append(sByteValue).Append("\t") +// .Append(floatValue).Append("\t") +// .Append(stringValue).Append("\t") +// .Append(ushortValue).Append("\t") +// .Append(uintValue).Append("\t") +// .Append(ulongValue).Append("\t") +// .Append(charValue, 10).Append("\t") +// .Append(stringValue, 1, 2).Append("\t") +// .Append(charArrayValue, 1, 2); + +// return builder.ToString(); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch10/Listing 10-3.cs b/9781430248606_sourcecode/Ch10/Listing 10-3.cs new file mode 100644 index 0000000..07b8a91 --- /dev/null +++ b/9781430248606_sourcecode/Ch10/Listing 10-3.cs @@ -0,0 +1,14 @@ +//using System; + +//namespace Ch10 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// string book = LoadStringLiteral(); +// } +// static string LoadStringLiteral() +// { return "Expert C# 5.0: with the .NET 4.5 Framework"; } +// } +//} diff --git a/9781430248606_sourcecode/Ch10/Listing 10-5.cs b/9781430248606_sourcecode/Ch10/Listing 10-5.cs new file mode 100644 index 0000000..21cc4e1 --- /dev/null +++ b/9781430248606_sourcecode/Ch10/Listing 10-5.cs @@ -0,0 +1,19 @@ +//using System; +//namespace Ch10 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// string book = new String(new char[] +// { +// 'E', 'x', 'p', 'e', 'r', 't', ' ', 'C', '#', +// ' ', '5', '.', '0', ':', ' ', 'w', 'i', 't', +// 'h', ' ', 't', 'h', 'e', ' ', '.', 'N', 'E', +// 'T', ' ', '4', '.', '5', ' ', 'F', 'r', 'a', +// 'm', 'e', 'w', 'o', 'r', 'k' +// }); +// Console.WriteLine(book); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch10/Listing 10-7.cs b/9781430248606_sourcecode/Ch10/Listing 10-7.cs new file mode 100644 index 0000000..a2c6853 --- /dev/null +++ b/9781430248606_sourcecode/Ch10/Listing 10-7.cs @@ -0,0 +1,39 @@ +//using System; + +//namespace Ch10 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Book book = new Book(); +// Console.WriteLine( +// book. +// SetBookName("Expert C# 5.0: with the .NET 4.5 Framework"). +// SetPublishedYear(2012).ToString()); +// } +// } + +// public class Book +// { +// private string bookName = default(string); +// private Int32 publishedYear = default(int); + +// public Book SetBookName(string nameOfTheBook) +// { +// bookName = nameOfTheBook; +// return this; +// } + +// public Book SetPublishedYear(int yearOfThePublication) +// { +// publishedYear = yearOfThePublication; +// return this; +// } + +// public override string ToString() +// { +// return string.Format("{0}:{1}", bookName, publishedYear); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch10/Listing 10-8.cs b/9781430248606_sourcecode/Ch10/Listing 10-8.cs new file mode 100644 index 0000000..61c26b7 --- /dev/null +++ b/9781430248606_sourcecode/Ch10/Listing 10-8.cs @@ -0,0 +1,18 @@ +//using System; + +//namespace Ch10 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// string bookName = "A book name."; + +// /* replace the whole string */ +// bookName = "Expert C# 5.0: with the .NET 4.5 Framework"; + +// /* Compiler will generate error in here. */ +// bookName[2] = 'A'; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch10/Program.cs b/9781430248606_sourcecode/Ch10/Program.cs new file mode 100644 index 0000000..20efb54 --- /dev/null +++ b/9781430248606_sourcecode/Ch10/Program.cs @@ -0,0 +1,12 @@ +namespace Ch10 +{ + class Program + { + static void Main(string[] args) + { + string book = LoadStringLiteral(); + } + static string LoadStringLiteral() + { return "Expert C# 5.0: with the .NET 4.5 Framework"; } + } +} \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch10/Properties/AssemblyInfo.cs b/9781430248606_sourcecode/Ch10/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..eb531cd --- /dev/null +++ b/9781430248606_sourcecode/Ch10/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Ch10")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Ch10")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("0fae1e5f-fa0b-4fc9-a78b-35363c97b560")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/9781430248606_sourcecode/Ch10/app.config b/9781430248606_sourcecode/Ch10/app.config new file mode 100644 index 0000000..c5e1dae --- /dev/null +++ b/9781430248606_sourcecode/Ch10/app.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch10/bin/Debug/Ch10.vshost.exe b/9781430248606_sourcecode/Ch10/bin/Debug/Ch10.vshost.exe new file mode 100644 index 0000000000000000000000000000000000000000..bb84a51ac4f20534146c09f2fd9c928d15a903b2 GIT binary patch literal 11600 zcmeG?2~<)?tG75|5OPOMcC{DsnWb(K|p-9Gz zCYX{WA(Jm;dIfQqiJ};SrLL}G(n&hl8zFy;j>apOj_;bS1<^27Oc^0Hz(7W(Czb%1 z@VUW90w!d%4!)s8@lWO`4L-o%@Fz33`3PxI|9bMyD%lrO3DBh`b_0^65V}%-gn|b^ zWm*RtcF<41tL^XP%x>1H-pWw-?KO@iBWB8={z?S^v{7pXzI!Jo%+8WXB|Jbhzz%$;+6FHiiU_~N3I z3EN^9UtHuj{7z%|8vGH<%)(m1Ea7^jMXH#Y>ya2$DiaMPF|c+I&NvSYVbqF9*~#r#ILj8dWjm251tb7C6J%*T7omHQ z|3QZ`M<(G55b{zd>0OBcT-q z$5D_+!Bh&aq+kUFn<&Vjy~Gre83lc5nD5M>aGT=)?fZgOM>nV`Kqv zI0bDf=!~2J||60WgZ0+&DGHhBHk2136`;HfS!lVrq~L;Qp?LLw4#2#K5zlOj)1BCy1d77#r{JpDO<77O@Xp{xhn!4xZ$h!p@= zFfDSIN{Pg1K}r~3)_Zst+KZ6#Bz!U1wTDViV=OmGAajRFq+hp^({qI>UpIiLVv=~h zxay+kDH5kh_;K;yXzG;G*Tj7I0^&~_{e-b1Ng|izo-6pOSGO>vq9h3^M-Ep;2n2i? z;VA;Ob9u6_h6EBx&>#pUI*0gkg>gyTxL$JaT8kGU;HGf+ao-Tzcp`=5x@Rq2jC5KA zDL81CbnCa%R49SU_|be|v6omoM|<(PaYE7-c~ay>L?^|?aX&MN4jh;n*m;M|z$BDt zLV?wpRH>I1yLLe*EkY6~5>Aj35>FW2!};IZ6RZg`l4U+2WpPr3Jg{aVFJ1yBKdala z!{Q|bH-_8;-f}`H`;N<(`ErFZ0s_H?nELq^^AiFst^h{IAPxchk}HJW2r40D)L?1| zN5+-NKyKu|BH5O9=>_$oO%{WM1RNkt$|LX>+U#yGW4SL{W#Dq<^-?pWTs_=s z+sMi))7<${{lWc@(;pS&e4xt(nf|K_4fiC?yA3+_%vvY*l!4@4iv}=BM|c$3*(8Ejv=a+B_=Ss*JEQXuIqpixQ3a_4(W> zyEKm#xtQrM)b=Fwn2Ghv>;fV#EMt&fQn_Nx)Omd`sf+@qw7IY%8d=~wU}z94&^xT# z?O1hMy$gBFV<=2Rx4X%UFBOAX2ZDn_3e*V(5c0klQtL7p%59=S80yz;986D8eMaINL%0wc8G%|*e$MEHmK74Q% z!Aa2qJ`Z*(ODar2$dFuS7_I+z60R6Fg7-`wLHR_mTT!wUQ^u&61Y`_zfv7uESG-PI zL=b$z5K9F^02Rvd;_$Xby>8#V-GB3vXN;}hekVw2b}%EC!sUQGG$K1h+L_tfM2e!P zOCtHUjw8EKEOAUULMMT4SGq-(nO(Kd^R74+p{XEA@0kR39#JP2L9k*3WE=-K98<(} zqe}k)-;w}E#jg-2r+wZ^?F0lS_7$G&N8TMKx*>Foia|&WS+)ZhjyMosg(Ghi3MD_V zlt8Ha0ra7)2BA8})Ao*tk&JOg@{U+nBp*Xj>4k4odB9b z6pKVuFB2+W3WHWIV5QK`MKb6of?7waV3?3D4|tM6FFxSozD0@ZgTuNz{_IdRDFbAO z)M2bA&`X3r0!GVV7PvbAj0da~>bA%RB0vJogpW-A5a@S}5mS7nfE2jYc(OeJxZnXV z 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 + + diff --git a/9781430248606_sourcecode/Ch10/bin/Debug/Ch10.vshost.exe.manifest b/9781430248606_sourcecode/Ch10/bin/Debug/Ch10.vshost.exe.manifest new file mode 100644 index 0000000..061c9ca --- /dev/null +++ b/9781430248606_sourcecode/Ch10/bin/Debug/Ch10.vshost.exe.manifest @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/9781430248606_sourcecode/Ch10/bin/Release/Ch10.exe b/9781430248606_sourcecode/Ch10/bin/Release/Ch10.exe new file mode 100644 index 0000000000000000000000000000000000000000..4d38c4f104d4f2494a148d71a314f6327161d45a GIT binary patch literal 4608 zcmeHKUu+yl8UOa;xOUQ5NhqNq5GLmoHEq1Ui=D&?c6|1oV_e0t@m-97lbXG~x$`!A zyO*6^_pX&71%XtAL=e1G>O-L~?F;HdC8DCL2wr$dP~U*31|IuB5f2CT3}5e=Y!{4vojjNEb>|2N!#c;rj(jL_S|caGgMF5Nj+ z+HjO;27W!T8p5_b&ksdKiXifYb38Gm_2+O zeClZG$pZ-SDL5-WGjFgJG>&U?(#)6>nThN<=IkaH_$P=*zfDv?ye|4^F$^59u6V^; z*p$2lMz0j<7UrDJ=;D>70>vvdzG25Bs{FEvQZK=vDZjcc@@K0`-P6{c1NOMgOVb!2Or`oZJVr~s=O_>2c= znjWLW8joo_p)srRoW?ngOB%nX@f*Oy$c}X#jn_4{fk)|O;Bk0mKf@YL+KYOai0nG> z2)zg#)%di=3C;fsy##(a* zTMIkvf>d_kGDX^-tVf7}{ zi7_9!VHETPzoRfqUMK^qor-)7%bUahDWLBQ8jn%A7Wo)u$pBuBzPF2PxPEVYfu+N>XoIV3P zj~ety7N;+MaHbmi7||0xUx|+Lp;Jm7`g&kBFZ{h)V-tm4B|Vf zfV-mr18c=X@fH8*O6K-o=6^9e{n8%}?HysAXU>=Beg9f{q1BW@m>=b!%SAs5Y?;UR z)WU_9)o8j>l{w$CUwN+FnmSX)*OQi#nrSwx6{7c(dkSXhZ#)+~>u;U=Y)kTN-VYX9 zQlAL=w2;!Qx_tNG#q$J-oSuCOT!ECnV+CGOkAs?uUsEhdT6|NjK7hY*A3iJINVKoP2NyR%jAhZ>})vjZl)%I>v*F*3tXTz%$8_{E`weIUc{W+y8|EHi|>_= zay-szX?(wQBngZ79bv$#MFH$Mc#lZf^r%L@UUHoHRw_YifvX_5D8xD+RNUSg_&bam zh$+M>2mJbdEZx>?GI(3WKa*6!jA&Bd_8rd!cvtwlVmr-ke)6cee+_IT&XCK2@&sl|ft%n?3)Xky>Xu_=>+crV9G>6}U2cdHbR9&ymBjYBub!2s{ z=XYyAPtcnr@N)|Ovp~WNf_<+fdR!g$-HDy42gh(y*Jc&EK2<3~UBaHIx8jBy&&5c3VAm0MO4m(DJI5>w9u0-Igjndtu+6X)Ad^2pI6xOgaj@^UB`9U9H9%jve^QuZ3f_ z-#BlnhPjzdi-zSnHL1eRJ)*tAln`BGOI3+SP1xQR5g+tv;o)+bNiVnOnoZZS^=)Wc z&1QN$wh#u93YWZ^|B&&VN^3p%R??0F_)KVU0(m_`oU*zaIGebX>ry?W)rpQ(fwpA_ zN46dDW9gFIl&)|YXVR8h@;3czGDwTanX~akK^be7t7MXtHZp#nXgZ;fZ;O3;yjuh; cm>%zZArQQ?J^@W6|1+Nb1myZ@ihULMFAZ(bJpcdz literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch10/bin/Release/Ch10.exe.config b/9781430248606_sourcecode/Ch10/bin/Release/Ch10.exe.config new file mode 100644 index 0000000..e365603 --- /dev/null +++ b/9781430248606_sourcecode/Ch10/bin/Release/Ch10.exe.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch10/bin/Release/Ch10.pdb b/9781430248606_sourcecode/Ch10/bin/Release/Ch10.pdb new file mode 100644 index 0000000000000000000000000000000000000000..330ad4382e68d8f008f5eb0314eeab572fbdb47e GIT binary patch literal 11776 zcmeHMO>7fK6n=I>iQ@$7fC8jaWJ*wh1bZDph$4!k7*mDD3dkVQ%2IGPYcNT6!`eWQ zdI%giaN^KQ4oLh+aNr0+q7W%URV4l;KvfS_`B8;v52aKbxIlQ{?hY7)K*$1_^*rb8 zn|W{F&dfJ6Z+?=pwvbO3 zATT*CshkmLr@Q6c{IYMm|8m6BjyU$E!z^lPdb*Nj#TY*%xf+2ASGP_!?tKXS9Ey0Z zHQ(v=@QdR{W3O`cUe~ec>V4Pi{j-EGY+y<5L*Q-kAB$pP{6`)we^a^-jq+>J)BcUo zshPI|hmthed)#~U*ZBA2e?PbxI25(>{=)};3}kKvCYBLBt?HiGdP48KF|fbq?0;Ri z_n9Zhv26f#My4(<_%nH>De~;xUzhy1ZLNHME(nPDF68G@Z&}ac5P1IR`6KlCPx#FG zj#QUn45s3vBbu3yEoxOFt*NB3%T%?PF`!w-_-J}~WJt@UV%sB1YJ+KPGt4j zs4ZP0oz*#APZa_99T9p*R#Q`8b8>GkuMJb1L+Nva_l^HDWD;e3_#o^3!n$h^YNy7q}ZeS)tk}=Kg>43OJThs9qeHa%nt7&^m!cR1YS|fQ;fu`e%zf6tw$Jus zoJSm3!ra9A7M@$3%!miLo2z3+@1U1_%;+Wb3WBDe8D|E3A7{(i%rF0;$Z1KXfxw*7 TsD`YCL_i`S5s(OcVgz0Q!%9cd literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch10/obj/x86/Debug/Ch10.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch10/obj/x86/Debug/Ch10.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..860c8e6 --- /dev/null +++ b/9781430248606_sourcecode/Ch10/obj/x86/Debug/Ch10.csproj.FileListAbsolute.txt @@ -0,0 +1,5 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch10\bin\Debug\Ch10.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch10\bin\Debug\Ch10.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch10\bin\Debug\Ch10.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch10\obj\x86\Debug\Ch10.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch10\obj\x86\Debug\Ch10.pdb diff --git a/9781430248606_sourcecode/Ch10/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch10/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..fbeabacbf4ee7d0067a18d93b6376d4dbcf59cb2 GIT binary patch literal 6630 zcmeHMdruoj5Vyf>FoYJyfrh`>?hgU6x40#R5>;*N zaOF{_q&=GpBPZ&0;cn(PQpp`A6&LPWCS#=WlS<}1M|+a3xy;j&I;rHgS8=%YmbJ>_ zn7M0}bhf%sU8-g>_ClIw=?I!!{(z-*k2^Nn+jKRPqOmJ!qrs$6q;k`3cv?M#!H=oq zh$gdNE5+&+r?qjanTxYh6VN*++$ygXxWlF`>e}3P@-P)nkyvBvnqv9Y`RLr{LW|BRs8DqPF;1~ zt`GUmDxO^9UmTTmz)z*GOf%0Vv$T+$smX?|sVp%nt)p$KkJM!C3S+z>MHM21UQJ0> z<4Vic`G7b$rWuBC1{7Tk#sw?WS43OF<;P4uznPuqs^QQU8oWBNmuR!yf!k78OerB> z!|b^RpCILWLzrFkT+QpOH{`0OZj=-mBEy74BEvw3qR}XUFVH_nN-d>X9g+@K&C-}g z#*fTpl3T_*2*F`yZ|{~akmozp@z^%y@^CKbTGEocwN$dMEFm3UIo~<+|9j&sEzt#Q zVKK9kooDIgmHpIh^SGl^?MEE;!wu^lR~L;AQnVjg6zrycD8J)574ileBxpZ!Xpo>` zy*T#~+{TB2jKyR4ID!PQKqP(-2>gs9i6a?9G7e;n+y@#V6F}D6#U315Ede@iQpwB! z!J5YVjdB1CQz!GrLh1}v_7LR8X@`6Qdc2=j&2=G;&5ct)wL14=E}fY(OTv>D%L$vA zD@)6n`D}V_et9vyc%XcNg@W8sCT)t!Z|3RpqM2tEuLe{Bs4N5UDKaITlK|xwS(QoV z0$?&MY8|oor|8EdkeSOfvcAn(L{gGyBWFC5tR+!k6AGDYp7<%fCaZ77V=b614)VL^DCKe^J%}l@@-;zJp&87{qPEvCqemMKa~Gccl`J~ z2Lp%wGVqSOzoV5Ho_d2<_25+<>ZLSnr0c&z4&aJkS0e|C|G`ENPP#QGko+ABPP6Nm z^}$UXt8E`F8uTOY!(RN5?mxy7g}Xh7oIvD@;GcXCB;55T2B`cw)D$XEi`sxs69}lW-ShJXlM37L TUxVZCzy8@UIR1ii@&5R~?TD6@ literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch10/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/9781430248606_sourcecode/Ch10/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch10/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/9781430248606_sourcecode/Ch10/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch10/obj/x86/Release/Ch10.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch10/obj/x86/Release/Ch10.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..0201db2 --- /dev/null +++ b/9781430248606_sourcecode/Ch10/obj/x86/Release/Ch10.csproj.FileListAbsolute.txt @@ -0,0 +1,6 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch10\bin\Release\Ch10.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch10\bin\Release\Ch10.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch10\bin\Release\Ch10.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch10\obj\x86\Release\ResolveAssemblyReference.cache +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch10\obj\x86\Release\Ch10.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch10\obj\x86\Release\Ch10.pdb diff --git a/9781430248606_sourcecode/Ch10/obj/x86/Release/Ch10.exe b/9781430248606_sourcecode/Ch10/obj/x86/Release/Ch10.exe new file mode 100644 index 0000000000000000000000000000000000000000..4d38c4f104d4f2494a148d71a314f6327161d45a GIT binary patch literal 4608 zcmeHKUu+yl8UOa;xOUQ5NhqNq5GLmoHEq1Ui=D&?c6|1oV_e0t@m-97lbXG~x$`!A zyO*6^_pX&71%XtAL=e1G>O-L~?F;HdC8DCL2wr$dP~U*31|IuB5f2CT3}5e=Y!{4vojjNEb>|2N!#c;rj(jL_S|caGgMF5Nj+ z+HjO;27W!T8p5_b&ksdKiXifYb38Gm_2+O zeClZG$pZ-SDL5-WGjFgJG>&U?(#)6>nThN<=IkaH_$P=*zfDv?ye|4^F$^59u6V^; z*p$2lMz0j<7UrDJ=;D>70>vvdzG25Bs{FEvQZK=vDZjcc@@K0`-P6{c1NOMgOVb!2Or`oZJVr~s=O_>2c= znjWLW8joo_p)srRoW?ngOB%nX@f*Oy$c}X#jn_4{fk)|O;Bk0mKf@YL+KYOai0nG> z2)zg#)%di=3C;fsy##(a* zTMIkvf>d_kGDX^-tVf7}{ zi7_9!VHETPzoRfqUMK^qor-)7%bUahDWLBQ8jn%A7Wo)u$pBuBzPF2PxPEVYfu+N>XoIV3P zj~ety7N;+MaHbmi7||0xUx|+Lp;Jm7`g&kBFZ{h)V-tm4B|Vf zfV-mr18c=X@fH8*O6K-o=6^9e{n8%}?HysAXU>=Beg9f{q1BW@m>=b!%SAs5Y?;UR z)WU_9)o8j>l{w$CUwN+FnmSX)*OQi#nrSwx6{7c(dkSXhZ#)+~>u;U=Y)kTN-VYX9 zQlAL=w2;!Qx_tNG#q$J-oSuCOT!ECnV+CGOkAs?uUsEhdT6|NjK7hY*A3iJINVKoP2NyR%jAhZ>})vjZl)%I>v*F*3tXTz%$8_{E`weIUc{W+y8|EHi|>_= zay-szX?(wQBngZ79bv$#MFH$Mc#lZf^r%L@UUHoHRw_YifvX_5D8xD+RNUSg_&bam zh$+M>2mJbdEZx>?GI(3WKa*6!jA&Bd_8rd!cvtwlVmr-ke)6cee+_IT&XCK2@&sl|ft%n?3)Xky>Xu_=>+crV9G>6}U2cdHbR9&ymBjYBub!2s{ z=XYyAPtcnr@N)|Ovp~WNf_<+fdR!g$-HDy42gh(y*Jc&EK2<3~UBaHIx8jBy&&5c3VAm0MO4m(DJI5>w9u0-Igjndtu+6X)Ad^2pI6xOgaj@^UB`9U9H9%jve^QuZ3f_ z-#BlnhPjzdi-zSnHL1eRJ)*tAln`BGOI3+SP1xQR5g+tv;o)+bNiVnOnoZZS^=)Wc z&1QN$wh#u93YWZ^|B&&VN^3p%R??0F_)KVU0(m_`oU*zaIGebX>ry?W)rpQ(fwpA_ zN46dDW9gFIl&)|YXVR8h@;3czGDwTanX~akK^be7t7MXtHZp#nXgZ;fZ;O3;yjuh; cm>%zZArQQ?J^@W6|1+Nb1myZ@ihULMFAZ(bJpcdz literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch10/obj/x86/Release/Ch10.pdb b/9781430248606_sourcecode/Ch10/obj/x86/Release/Ch10.pdb new file mode 100644 index 0000000000000000000000000000000000000000..330ad4382e68d8f008f5eb0314eeab572fbdb47e GIT binary patch literal 11776 zcmeHMO>7fK6n=I>iQ@$7fC8jaWJ*wh1bZDph$4!k7*mDD3dkVQ%2IGPYcNT6!`eWQ zdI%giaN^KQ4oLh+aNr0+q7W%URV4l;KvfS_`B8;v52aKbxIlQ{?hY7)K*$1_^*rb8 zn|W{F&dfJ6Z+?=pwvbO3 zATT*CshkmLr@Q6c{IYMm|8m6BjyU$E!z^lPdb*Nj#TY*%xf+2ASGP_!?tKXS9Ey0Z zHQ(v=@QdR{W3O`cUe~ec>V4Pi{j-EGY+y<5L*Q-kAB$pP{6`)we^a^-jq+>J)BcUo zshPI|hmthed)#~U*ZBA2e?PbxI25(>{=)};3}kKvCYBLBt?HiGdP48KF|fbq?0;Ri z_n9Zhv26f#My4(<_%nH>De~;xUzhy1ZLNHME(nPDF68G@Z&}ac5P1IR`6KlCPx#FG zj#QUn45s3vBbu3yEoxOFt*NB3%T%?PF`!w-_-J}~WJt@UV%sB1YJ+KPGt4j zs4ZP0oz*#APZa_99T9p*R#Q`8b8>GkuMJb1L+Nva_l^HDWD;e3_#o^3!n$h^YNy7q}ZeS)tk}=Kg>43OJThs9qeHa%nt7&^m!cR1YS|fQ;fu`e%zf6tw$Jus zoJSm3!ra9A7M@$3%!miLo2z3+@1U1_%;+Wb3WBDe8D|E3A7{(i%rF0;$Z1KXfxw*7 TsD`YCL_i`S5s(OcVgz0Q!%9cd literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch10/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch10/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..20d1463757aa1e1e69733ed7549bc12e082cb46f GIT binary patch literal 5705 zcmeHLdruoj5VyfxFoYJ7X-mdERz-Fe;I&TlsskHupDVxwPbcZZO;uel?I5>;*O za1}7Gqyv`=D<|r8;cw;(X>$jp;=*6cW~}g&Hgkce0|{$B1X?mLZEgn@k2}9Wt1OPd zU#n#1tBcj8YBuXGX4pI%A(hMT(X<|L&n11Ez6L28ZzXFqKw3p6H~mJS)if@C$UIM+ zfcsJ@s8_sJp{cV+EefI z>qR_zXZ+$S(?dU%zG7ycOK`N19MojP)l8OvN#}5z=|eT%kfMqKAt$CJ)VR{JbG0i}d|iNSfHuXdJEzhYQzd(c(lEX;Gk_qaL5W$@`mb`<6 zhDYg7lE@emV;o7$xQk@{wAiULt0hDkCrpAJApzTZQz%CTHhqj+XS!RRJC(T5JToRx z&e5w?dtHblyU;{*pmSf%WwLX2Nd(e?oNysz7MiTyz?yF74zn3sRDQRc%P;IAc)%3c zc~DrA%UDN>poDiEVT2-7L4uF<$8wl+2+2>#`cIL}TsE)^g~(8268V$FHzN&ygf7*YgYlItdG!kP3rL%=<`w_;}9| z6Io6Oii`&+f#p_htgkf$KxT-CFeDw1%}%%xEnIjkkwcdskWEgUPqT8RLna%c?GI7S zZ#`AhEv%vV85D2#RD4wNC4?GgQG?$P4SA-SMWh7!9JYo!zv!1&p-xJvN2uX#KfEI0 zk5Tw;KZO5U_rmx*K?Mi>Qn1DSKS)c0HnTwm?njXvRN!8n4ECs882flGs;iNG#s7rS z{p0qz96A3aqTTG>BhKLbLN^lcJ!)7-T;I%me$$elX^-KOU`BxF2EE6hY50 kUeB@9+ebmTliD4VC@G;f{P$q@_`mzi!R`^=QSFWY2TJc~kN^Mx literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch11/Ch11.csproj b/9781430248606_sourcecode/Ch11/Ch11.csproj new file mode 100644 index 0000000..d2929da --- /dev/null +++ b/9781430248606_sourcecode/Ch11/Ch11.csproj @@ -0,0 +1,72 @@ + + + + Debug + x86 + 8.0.30703 + 2.0 + {3E8C37A0-B67E-4B8D-8463-0E27AE5CC063} + Exe + Properties + Ch11 + Ch11 + v4.5 + + + 512 + + + x86 + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + false + + + x86 + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch11/Listing 11-1.cs b/9781430248606_sourcecode/Ch11/Listing 11-1.cs new file mode 100644 index 0000000..1175e37 --- /dev/null +++ b/9781430248606_sourcecode/Ch11/Listing 11-1.cs @@ -0,0 +1,23 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; + +//namespace Ch11 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// List numbers = new List(); +// numbers.Add(0); +// numbers.Add(1); +// ShowResult(numbers); +// } +// public static void ShowResult(IEnumerable aList) +// { +// foreach (var item in aList) +// Console.Write("{0}\t", item); +// Console.WriteLine(); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch11/Listing 11-10.cs b/9781430248606_sourcecode/Ch11/Listing 11-10.cs new file mode 100644 index 0000000..283074b --- /dev/null +++ b/9781430248606_sourcecode/Ch11/Listing 11-10.cs @@ -0,0 +1,26 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; + +//namespace Ch11 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// ArrayList numbers = new ArrayList() +// { +// 0,1, 2, 3 +// }; +// numbers.InsertRange(3, new List() { 22, 33, 77 }); +// ShowResult(numbers); +// } + +// public static void ShowResult(IEnumerable aList) +// { +// foreach (var item in aList) +// Console.Write("{0}\t", item); +// Console.WriteLine(); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch11/Listing 11-11.cs b/9781430248606_sourcecode/Ch11/Listing 11-11.cs new file mode 100644 index 0000000..04df3bf --- /dev/null +++ b/9781430248606_sourcecode/Ch11/Listing 11-11.cs @@ -0,0 +1,27 @@ +//using System; +//using System.Collections; + +//namespace Ch11 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// ArrayList terrestrialPlanets = new ArrayList(); +// terrestrialPlanets.Add("Mercury"); +// terrestrialPlanets.Add("Venus"); +// terrestrialPlanets.Add("Earth"); +// terrestrialPlanets.Add("Mars"); + +// terrestrialPlanets.Remove("Venus"); +// ShowResult(terrestrialPlanets); +// } + +// public static void ShowResult(IEnumerable aList) +// { +// foreach (string item in aList) +// Console.Write("{0}\t", item); +// Console.WriteLine(); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch11/Listing 11-13.cs b/9781430248606_sourcecode/Ch11/Listing 11-13.cs new file mode 100644 index 0000000..0409295 --- /dev/null +++ b/9781430248606_sourcecode/Ch11/Listing 11-13.cs @@ -0,0 +1,26 @@ +//using System; +//using System.Collections; + +//namespace Ch11 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Stack terrestrialPlanets = new Stack(); +// terrestrialPlanets.Push("Mercury"); +// terrestrialPlanets.Push("Venus"); +// terrestrialPlanets.Push("Earth"); +// terrestrialPlanets.Push("Mars"); + +// ShowResult(terrestrialPlanets); +// } + +// public static void ShowResult(IEnumerable aList) +// { +// foreach (string item in aList) +// Console.Write("{0}\t", item); +// Console.WriteLine(); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch11/Listing 11-20.cs b/9781430248606_sourcecode/Ch11/Listing 11-20.cs new file mode 100644 index 0000000..dfabfb1 --- /dev/null +++ b/9781430248606_sourcecode/Ch11/Listing 11-20.cs @@ -0,0 +1,25 @@ +//using System; +//using System.Collections; + +//namespace Ch11 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Queue terrestrialPlanets = new Queue(); +// terrestrialPlanets.Enqueue("Mercury"); +// terrestrialPlanets.Enqueue("Venus"); +// terrestrialPlanets.Enqueue("Earth"); +// terrestrialPlanets.Enqueue("Mars"); +// ShowResult(terrestrialPlanets); +// } + +// public static void ShowResult(IEnumerable aList) +// { +// foreach (string item in aList) +// Console.Write("{0}\t", item); +// Console.WriteLine(); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch11/Listing 11-25.cs b/9781430248606_sourcecode/Ch11/Listing 11-25.cs new file mode 100644 index 0000000..77cfb0d --- /dev/null +++ b/9781430248606_sourcecode/Ch11/Listing 11-25.cs @@ -0,0 +1,31 @@ +//using System; +//using System.Collections; + +//namespace Ch11 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Hashtable terrestrialPlanets = new Hashtable(); +// terrestrialPlanets.Add("Mercury", +// "The innermost of the eight planets."); +// terrestrialPlanets.Add("Venus", +// "The second planet from the Sun."); +// terrestrialPlanets.Add("Earth", +// "The third planet from the Sun."); +// terrestrialPlanets.Add("Mars", +// "The fourth planet from the Sun."); +// terrestrialPlanets.Add("Vesta", +// "One of the largest asteroids in the Solar System."); + +// Console.WriteLine( +// "Mercury\t{0}\nVenus\t{1}\nEarth\t{2}\nMars\t{3}\nVesta\t{4}", +// terrestrialPlanets["Mercury"], +// terrestrialPlanets["Venus"], +// terrestrialPlanets["Earth"], +// terrestrialPlanets["Mars"], +// terrestrialPlanets["Vesta"]); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch11/Listing 11-27.cs b/9781430248606_sourcecode/Ch11/Listing 11-27.cs new file mode 100644 index 0000000..8e3524b --- /dev/null +++ b/9781430248606_sourcecode/Ch11/Listing 11-27.cs @@ -0,0 +1,38 @@ +//using System; +//using System.Collections.Generic; + +//namespace Ch11 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IDictionary terrestrialPlanets = +// new Dictionary(); + +// terrestrialPlanets.Add("Mercury", +// "The innermost of the eight planets."); +// terrestrialPlanets.Add("Venus", +// "The second planet from the Sun."); +// terrestrialPlanets.Add("Earth", +// "The third planet from the Sun."); +// terrestrialPlanets.Add("Mars", +// "The fourth planet from the Sun."); +// terrestrialPlanets.Add("Vesta", +// "One of the largest asteroids in the Solar System."); +// terrestrialPlanets.Add("Ceres", +// "The dwarf planet in the inner Solar System."); +// terrestrialPlanets.Add("Pallas", +// "One of the largest in the Solar System."); + +// Console.WriteLine("Mercury\t{0}\nVenus\t{1}\nEarth\t{2}\nMars\t{3}\nVesta\t{4}\nCeres\t{5}\nPallas\t{6}\n", +// terrestrialPlanets["Mercury"], +// terrestrialPlanets["Venus"], +// terrestrialPlanets["Earth"], +// terrestrialPlanets["Mars"], +// terrestrialPlanets["Vesta"], +// terrestrialPlanets["Ceres"], +// terrestrialPlanets["Pallas"]); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch11/Listing 11-4.cs b/9781430248606_sourcecode/Ch11/Listing 11-4.cs new file mode 100644 index 0000000..948c533 --- /dev/null +++ b/9781430248606_sourcecode/Ch11/Listing 11-4.cs @@ -0,0 +1,26 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; + +//namespace Ch11 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// List numbers = new List() +// { +// 0,1, 2, 3 +// }; +// numbers.InsertRange(3, new List() { 22, 33, 77 }); +// ShowResult(numbers); +// } + +// public static void ShowResult(IEnumerable aList) +// { +// foreach (var item in aList) +// Console.Write("{0}\t", item); +// Console.WriteLine(); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch11/Listing 11-6.cs b/9781430248606_sourcecode/Ch11/Listing 11-6.cs new file mode 100644 index 0000000..1c9b607 --- /dev/null +++ b/9781430248606_sourcecode/Ch11/Listing 11-6.cs @@ -0,0 +1,27 @@ +//using System; +//using System.Collections; + +//namespace Ch11 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// ArrayList terrestrialPlanets = new ArrayList(); +// terrestrialPlanets.Add("Mercury"); /* Default capacity is 4.*/ +// terrestrialPlanets.Add("Venus"); +// terrestrialPlanets.Add("Earth"); +// terrestrialPlanets.Add("Mars"); + +// ShowResult(terrestrialPlanets); +// } + +// public static void ShowResult( +// IEnumerable aList, char mySeparator = ' ') +// { +// foreach (string item in aList) +// Console.Write("{0}{1}", mySeparator, item); +// Console.WriteLine(); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch11/Program.cs b/9781430248606_sourcecode/Ch11/Program.cs new file mode 100644 index 0000000..0db5cfc --- /dev/null +++ b/9781430248606_sourcecode/Ch11/Program.cs @@ -0,0 +1,30 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Linq; + +namespace Ch12 +{ + class Program + { + static void Main(string[] args) + { + IList firstList = new List() + { + 1,2,3,4 + }; + + IList secondList = new List() + { + "One","Two","Three","Four" + }; + + var result = firstList.Zip(secondList, (x, y) => x + ":\t" + y); + + result.ToList().ForEach(x => Console.WriteLine(x)); + } + + + + } +} diff --git a/9781430248606_sourcecode/Ch11/Properties/AssemblyInfo.cs b/9781430248606_sourcecode/Ch11/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..6adf6d3 --- /dev/null +++ b/9781430248606_sourcecode/Ch11/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Ch11")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Ch11")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("07b8343f-7382-4e0e-ab3a-1964ad3fbede")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/9781430248606_sourcecode/Ch11/app.config b/9781430248606_sourcecode/Ch11/app.config new file mode 100644 index 0000000..c5e1dae --- /dev/null +++ b/9781430248606_sourcecode/Ch11/app.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch11/bin/Debug/Ch11.vshost.exe b/9781430248606_sourcecode/Ch11/bin/Debug/Ch11.vshost.exe new file mode 100644 index 0000000000000000000000000000000000000000..212bd7f4bd85638db6f1427777e53df0c87cd21a GIT binary patch literal 22392 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 + + diff --git a/9781430248606_sourcecode/Ch11/bin/Debug/Ch11.vshost.exe.manifest b/9781430248606_sourcecode/Ch11/bin/Debug/Ch11.vshost.exe.manifest new file mode 100644 index 0000000..061c9ca --- /dev/null +++ b/9781430248606_sourcecode/Ch11/bin/Debug/Ch11.vshost.exe.manifest @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/9781430248606_sourcecode/Ch11/bin/Release/Ch11.exe b/9781430248606_sourcecode/Ch11/bin/Release/Ch11.exe new file mode 100644 index 0000000000000000000000000000000000000000..0ec9453508dd8e94087957809b9754c6cdf2f558 GIT binary patch literal 5120 zcmeHKU2I%O6+ZW_v$37TjqNl^i4(5ZY2`Hade>_uPHHD>uN~vWiCwSliei!6-5sxQ zeSfwycimkoP!I}~z(aT`LPChV5eXp>NDY5MLPA2&N{AS1ETxrWy>o3&u|mN9UuKs2mPS!-QN4! z?7O{-YnCu7+$(d_F^Z<^dcIL$2Cuq?@A{$>Tk0T**J}`-ys@^8ZE~P1DuPR`4H-tV#N;=7aa!02oughIWHf%^f@9y-)Z^yXd}J0dOE zO%6YC>rUy!F&k?;MJL>9k8{u!54N;F7w7vT^pObN7oi6u^otRCIzp>C-Ow55`KI`J zqV80T2CzTe@6^3R(ty*4c^Ok;Up@@8;@;Dc^@D7WdoZAV;Qjui=$=2J_dg?htewbT zp3tNRXfmD~!^u=KlggyeNy#3vf%Dj)?=wU{LBAit>dX7wa?3)__$BhFhQ4npPg%S# zWFYlTFU?G%p9enz)qNATR{$>?RA|%3b&{z-|9Cb-(om2vPrXL@F60CIl)NL9%Q=CS z?O`9M6rDnf%+V`V~D+Us8BamwP=>_&Z(h{wJVpfo(w~4^lTBL+m6sZ^+TF&{-tCM!!+q zTl5LU2{GuEW1l}-hWGMJ(#TQB>EJ<~>WD#^PEfDHQwq}x&nX;NIHT|-g&zm@k*R1) z;cE)(3O@_%hb3i7($|1T=x&JL*E68s)<>w5ex*;)J^F(_O+Tc+=vP4hO_v1Pn7 zxhh5n;9ZjT(RE-qS-@io`xKs5@(g*9zo;Zv6z1s*kQC{Az;${66cpEz^aecz{2U$C z#^@Dlx!H&%LZR9*po~tVX=F6W(W_pmYO@QJTT7>ttj1_QIFFTp98vVRZ51eA7d~@n zuJ9@=`gGN_+)$LvdA1Fi<+*}prrfH-xLL5J9?SKYO}okjC5yht$>d0Qr#@>5A6=eR zOm0efpgXz1RzpQJE(CK5c74(EZ8q-XTPak1))Y@NQRG%d?zwX?=ees^xeC>f8FnhB zTi>}3ewV66f9F8XtJJwwUfX48k((vvn0$SgRaM)s@`&*bFRQL^IV?Hj`iy&(JmVWy z5h2QX&ax#eL~c{pbk!K1~)$aNSh zShnRy-xB9$kU8U}5-l*t+hEOflSwqq{4n_>ms>MA!Mp3ZD(B4g5nfk#$jXWs@Pe}W%7GyD^c*HeGMv2n{*~ZpNY_CBlJjw#_`|X&?E4r3QFU=r2}sOKaFoT z4V3L$cYmKR-F|racF)|&zfNCxlUm>Y)XMTR!|#0&=bv`GBaZr}t1T8YNYf2!F*L11 zg1!gPIVH(fKx>brdRq2sT`#p5)U|~9J#mU@9X&lDb=(M=99(MCs6~G4xSG_7dqktI zW{Mj>zh@Xjsq_%hDUD91&K5>8!pWLD z`uFVZTZdL2{r30+x#IHql?l&VUzw^^82591()E?RSLH>PLsqN7sha6jY$jG@)K~aTtx-b-BiC~tpQxDv1G}XH3KT_ zXUWJa>VFe-RjU}NqEQnOa{uO5JA=D?{xR~kUF358HYJb*@AeL;Z)S<^$d?$b{V_dJS4l zRIHb9AKQczh+JC5JuTZwlB*UmYCx z=1Z@9HP?j?HsWTYu99bDLw6EfO-bbc0$o@$3$CnY=iqS#wU@N43|r*?Ejwif>LLTb zA?%+95^7Mn_guJ6Mn~@5@KEKFXMEox43U+v75# z){G-|0)9GpBQ`uVkPTZSx_#ZFAOCFhV$HFQjo{KAOW>eP7|bntCET22iKWF$10xAT z_@-MjZO>(6i8>RBix&>GkD6f>WI%x{#u8QTo)^V66dYo}v5MRi-l{)P^qljiaFQG8 zgyER3waSFwIC9l)P-PfRWiusQhqzj|SR{|`gyG^G9!p%Uk5?+TRaEzL(yUYxgMkL0 zSA{?0u6j>s&rm|G!`^}wtGIXTArA>>uc0pVSqW9*2Fipo6Hll$)6i<5ZR)`hTCB>7 zZ1*5G)y1dV*BV|GYFV4I@owa aU}R=}2$~W6k6Tgy+kOcA{lAM_BJgiwfJ%M< literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch11/bin/Release/Ch11.exe.config b/9781430248606_sourcecode/Ch11/bin/Release/Ch11.exe.config new file mode 100644 index 0000000..e365603 --- /dev/null +++ b/9781430248606_sourcecode/Ch11/bin/Release/Ch11.exe.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch11/bin/Release/Ch11.pdb b/9781430248606_sourcecode/Ch11/bin/Release/Ch11.pdb new file mode 100644 index 0000000000000000000000000000000000000000..7be4ebfb661a5e51ddb16ea894909fc4b2c6f2a2 GIT binary patch literal 11776 zcmeHNO-x)>6g~q;87S4Eh!wS+wxE@t`9X^n8zBrd!7>FMY1(F*G7Jxy!py@rLxt#K zYN89`f`ywlHA*yXq8k&93$=!rrct9YX^mSG7fp0gtZ~5#{J#6%tJqkqjtCvzq33<~ z-Fwfy=bm%l{W;TcB5vqueJJA%`9t;f-f(1}_c31}P+nTy5fM;<`X~1wnc+L=ZWEkm z9#~*@(V_Khfj#2Pfc5PEvaf=!JzU4`vKUYEz2^pL-}WczgqvfA1+=0`OcBwi1}xY^*5sV zfu~z9Zn*53j>v4!+XXWhI`^OY>B=R~bgTJZ_QtD6JVTc~=j%k~OS;bYpG~!WJNR<< zN58axchWd_ipK`h;lYN}@1NLxrS9E*JD+Gj{fL?CJZ~2ZylE+Fj24-j>7&Zf!~EBd(a$ABw~ z9=087nCc6E=Uufuo0zW^GNltbr(g-dWpsOY+D*CeZ=Zha4{=VzeT6e)G?|s1iW*!6Z;dO~)Io}H=jq-Ml2 zx*9h1_1%iTuHey)Xd7J=Q|4Es&wxoT{Hex}E(1?96I3perQtULD}Z+bw*oQlERJGS zD%%W1S+*Ux8F&C#2|NO<0`faU+&=p}a6hnI0%+F@-hLCVL4K{c;YsS)52kL^(Y7ab zdKOIT6*;*9cy(?e>jp;fz76;c`g#c12W$WyRDE+rpx*W9qe1o0ettt<30V0CNWXf) zkAl0w!(fM2&H}vCRlEJyyy&75lRW{XFSc8_+rqGgwx96&ugSZNvBJJ$)7h`TgEK2WSUlS;J4N_wo| zrT6DGX6U^C{^{cv+(C8kFBO?86aBqHQqsPB$hGXzLzX5FTky^ zTnW3b|7O9sCg(7TW44iZ8+%sg7XA{kV`)~`?7}2=Xi|yl+)Uf0tBTA0{&yUj`MVRT zk*?H`F8)+3i954DZN&Yv(z7SdTT*MVK&cku0WfZM>#XKWTR2j!g#An*V5 q61~Djld%lm5!gOr7%GUuyFKC<4y_>zRIVXi990|(I2QPSE$}-=*m;cr literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch11/obj/x86/Debug/Ch11.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch11/obj/x86/Debug/Ch11.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..648f765 --- /dev/null +++ b/9781430248606_sourcecode/Ch11/obj/x86/Debug/Ch11.csproj.FileListAbsolute.txt @@ -0,0 +1,5 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch11\bin\Debug\Ch11.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch11\bin\Debug\Ch11.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch11\bin\Debug\Ch11.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch11\obj\x86\Debug\Ch11.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch11\obj\x86\Debug\Ch11.pdb diff --git a/9781430248606_sourcecode/Ch11/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch11/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..748df9360a859133d2275f65cda69432170c58c0 GIT binary patch literal 6630 zcmeHMdruoj5Vyf>FoYJyfrh`>?hgU6x40#R5>;*N zaOF{_q&=GpBPZ&0;cn(PQpp`A6&LPWCS#=WlS<}1M|+a3xy;j&I;rHgS8=%YmbJ>_ zn7M0}bhf%sU8-g>_ClIw=?I!!{(z-*k2^Nn+jKRPqOmJ!qrs$6q;k`3cv?M#!H=oq zh$gdNE5+&+r?qjanTxYh6VN*++$ygXxWlF`>e}3P@-P)nkyvBvnqv9Y`RLr{LW|BRs8DqPF;1~ zt`GUmDxO^9UmTTmz)z*GOf%0Vv$T+$smX?|sVp%nt)p$KkJM!C3S+z>MHM21UQJ0> z<4Vic`G7b$rWuBC1{7Tk#sw?WS43OF<;P4uznPuqs^QQU8oWBNmuR!yf!k78OerB> z!|b^RpCILWLzrFkT+QpOH{`0OZj=-mBEy74BEvw3qR}XUFVH_nN-d>X9g+@K&C-}g z#*fTpl3T_*2*F`yZ|{~akmozp@z^%y@^CKbTGEocwN$dMEFm3UIo~<+|9j&sEzt#Q zVKK9kooDIgmHpIh^SGl^?MEE;!wu^lR~L;AQnVjg6zrycD8J)574ileBxpZ!Xpo>` zy*T#~+{TB2jKyR4ID!PQKqP(-2>gs9i6a?9G7e;n+y@#V6F}D6#U315Ede@iQpwB! z!J5YVjdB1CQz!GrLh1}v_7LR8X@`6Qdc2=j&2=G;&5ct)wL14=E}fY(OTv>D%L$vA zD@)6n`D}V_et9vyc%XcNg@W8sCS!`qZ|3RpqM2tEuLe{Bs4N5UDKaITlK|xwS(QoV z0$?&MY8|oor|8EdkeSOfvcAn(L{gGyBWFC5tR+!k6AGDYp7<%fCaZ77V=b614)VL^DCKe^J%}l@@-;zJp&87{qPEvCqemMKa~Gccl`J~ z2Lp%wGVqSOzoV5Ho_d2<_25+<>ZLSnr0c&z4&aJkS0e|C|G`ENPP#QGko+ABPP6Nm z^}$UXt8E`F8uTOY!(RN5?mxy7g}Xh7oIvD@;GcXCB;55T2B`cw)D$XEi`sxs69}lW-ShJXlM37L TUxVZCzy8@UIR1ii@&5R~3-p$l literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch11/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/9781430248606_sourcecode/Ch11/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch11/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/9781430248606_sourcecode/Ch11/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch11/obj/x86/Release/Ch11.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch11/obj/x86/Release/Ch11.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..398eef0 --- /dev/null +++ b/9781430248606_sourcecode/Ch11/obj/x86/Release/Ch11.csproj.FileListAbsolute.txt @@ -0,0 +1,6 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch11\bin\Release\Ch11.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch11\bin\Release\Ch11.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch11\bin\Release\Ch11.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch11\obj\x86\Release\ResolveAssemblyReference.cache +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch11\obj\x86\Release\Ch11.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch11\obj\x86\Release\Ch11.pdb diff --git a/9781430248606_sourcecode/Ch11/obj/x86/Release/Ch11.exe b/9781430248606_sourcecode/Ch11/obj/x86/Release/Ch11.exe new file mode 100644 index 0000000000000000000000000000000000000000..0ec9453508dd8e94087957809b9754c6cdf2f558 GIT binary patch literal 5120 zcmeHKU2I%O6+ZW_v$37TjqNl^i4(5ZY2`Hade>_uPHHD>uN~vWiCwSliei!6-5sxQ zeSfwycimkoP!I}~z(aT`LPChV5eXp>NDY5MLPA2&N{AS1ETxrWy>o3&u|mN9UuKs2mPS!-QN4! z?7O{-YnCu7+$(d_F^Z<^dcIL$2Cuq?@A{$>Tk0T**J}`-ys@^8ZE~P1DuPR`4H-tV#N;=7aa!02oughIWHf%^f@9y-)Z^yXd}J0dOE zO%6YC>rUy!F&k?;MJL>9k8{u!54N;F7w7vT^pObN7oi6u^otRCIzp>C-Ow55`KI`J zqV80T2CzTe@6^3R(ty*4c^Ok;Up@@8;@;Dc^@D7WdoZAV;Qjui=$=2J_dg?htewbT zp3tNRXfmD~!^u=KlggyeNy#3vf%Dj)?=wU{LBAit>dX7wa?3)__$BhFhQ4npPg%S# zWFYlTFU?G%p9enz)qNATR{$>?RA|%3b&{z-|9Cb-(om2vPrXL@F60CIl)NL9%Q=CS z?O`9M6rDnf%+V`V~D+Us8BamwP=>_&Z(h{wJVpfo(w~4^lTBL+m6sZ^+TF&{-tCM!!+q zTl5LU2{GuEW1l}-hWGMJ(#TQB>EJ<~>WD#^PEfDHQwq}x&nX;NIHT|-g&zm@k*R1) z;cE)(3O@_%hb3i7($|1T=x&JL*E68s)<>w5ex*;)J^F(_O+Tc+=vP4hO_v1Pn7 zxhh5n;9ZjT(RE-qS-@io`xKs5@(g*9zo;Zv6z1s*kQC{Az;${66cpEz^aecz{2U$C z#^@Dlx!H&%LZR9*po~tVX=F6W(W_pmYO@QJTT7>ttj1_QIFFTp98vVRZ51eA7d~@n zuJ9@=`gGN_+)$LvdA1Fi<+*}prrfH-xLL5J9?SKYO}okjC5yht$>d0Qr#@>5A6=eR zOm0efpgXz1RzpQJE(CK5c74(EZ8q-XTPak1))Y@NQRG%d?zwX?=ees^xeC>f8FnhB zTi>}3ewV66f9F8XtJJwwUfX48k((vvn0$SgRaM)s@`&*bFRQL^IV?Hj`iy&(JmVWy z5h2QX&ax#eL~c{pbk!K1~)$aNSh zShnRy-xB9$kU8U}5-l*t+hEOflSwqq{4n_>ms>MA!Mp3ZD(B4g5nfk#$jXWs@Pe}W%7GyD^c*HeGMv2n{*~ZpNY_CBlJjw#_`|X&?E4r3QFU=r2}sOKaFoT z4V3L$cYmKR-F|racF)|&zfNCxlUm>Y)XMTR!|#0&=bv`GBaZr}t1T8YNYf2!F*L11 zg1!gPIVH(fKx>brdRq2sT`#p5)U|~9J#mU@9X&lDb=(M=99(MCs6~G4xSG_7dqktI zW{Mj>zh@Xjsq_%hDUD91&K5>8!pWLD z`uFVZTZdL2{r30+x#IHql?l&VUzw^^82591()E?RSLH>PLsqN7sha6jY$jG@)K~aTtx-b-BiC~tpQxDv1G}XH3KT_ zXUWJa>VFe-RjU}NqEQnOa{uO5JA=D?{xR~kUF358HYJb*@AeL;Z)S<^$d?$b{V_dJS4l zRIHb9AKQczh+JC5JuTZwlB*UmYCx z=1Z@9HP?j?HsWTYu99bDLw6EfO-bbc0$o@$3$CnY=iqS#wU@N43|r*?Ejwif>LLTb zA?%+95^7Mn_guJ6Mn~@5@KEKFXMEox43U+v75# z){G-|0)9GpBQ`uVkPTZSx_#ZFAOCFhV$HFQjo{KAOW>eP7|bntCET22iKWF$10xAT z_@-MjZO>(6i8>RBix&>GkD6f>WI%x{#u8QTo)^V66dYo}v5MRi-l{)P^qljiaFQG8 zgyER3waSFwIC9l)P-PfRWiusQhqzj|SR{|`gyG^G9!p%Uk5?+TRaEzL(yUYxgMkL0 zSA{?0u6j>s&rm|G!`^}wtGIXTArA>>uc0pVSqW9*2Fipo6Hll$)6i<5ZR)`hTCB>7 zZ1*5G)y1dV*BV|GYFV4I@owa aU}R=}2$~W6k6Tgy+kOcA{lAM_BJgiwfJ%M< literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch11/obj/x86/Release/Ch11.pdb b/9781430248606_sourcecode/Ch11/obj/x86/Release/Ch11.pdb new file mode 100644 index 0000000000000000000000000000000000000000..7be4ebfb661a5e51ddb16ea894909fc4b2c6f2a2 GIT binary patch literal 11776 zcmeHNO-x)>6g~q;87S4Eh!wS+wxE@t`9X^n8zBrd!7>FMY1(F*G7Jxy!py@rLxt#K zYN89`f`ywlHA*yXq8k&93$=!rrct9YX^mSG7fp0gtZ~5#{J#6%tJqkqjtCvzq33<~ z-Fwfy=bm%l{W;TcB5vqueJJA%`9t;f-f(1}_c31}P+nTy5fM;<`X~1wnc+L=ZWEkm z9#~*@(V_Khfj#2Pfc5PEvaf=!JzU4`vKUYEz2^pL-}WczgqvfA1+=0`OcBwi1}xY^*5sV zfu~z9Zn*53j>v4!+XXWhI`^OY>B=R~bgTJZ_QtD6JVTc~=j%k~OS;bYpG~!WJNR<< zN58axchWd_ipK`h;lYN}@1NLxrS9E*JD+Gj{fL?CJZ~2ZylE+Fj24-j>7&Zf!~EBd(a$ABw~ z9=087nCc6E=Uufuo0zW^GNltbr(g-dWpsOY+D*CeZ=Zha4{=VzeT6e)G?|s1iW*!6Z;dO~)Io}H=jq-Ml2 zx*9h1_1%iTuHey)Xd7J=Q|4Es&wxoT{Hex}E(1?96I3perQtULD}Z+bw*oQlERJGS zD%%W1S+*Ux8F&C#2|NO<0`faU+&=p}a6hnI0%+F@-hLCVL4K{c;YsS)52kL^(Y7ab zdKOIT6*;*9cy(?e>jp;fz76;c`g#c12W$WyRDE+rpx*W9qe1o0ettt<30V0CNWXf) zkAl0w!(fM2&H}vCRlEJyyy&75lRW{XFSc8_+rqGgwx96&ugSZNvBJJ$)7h`TgEK2WSUlS;J4N_wo| zrT6DGX6U^C{^{cv+(C8kFBO?86aBqHQqsPB$hGXzLzX5FTky^ zTnW3b|7O9sCg(7TW44iZ8+%sg7XA{kV`)~`?7}2=Xi|yl+)Uf0tBTA0{&yUj`MVRT zk*?H`F8)+3i954DZN&Yv(z7SdTT*MVK&cku0WfZM>#XKWTR2j!g#An*V5 q61~Djld%lm5!gOr7%GUuyFKC<4y_>zRIVXi990|(I2QPSE$}-=*m;cr literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch11/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch11/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..c8a41fc9d13e7ef9103a13ad4e452a4257d77f53 GIT binary patch literal 5705 zcmeHLdruoj5VyfxFoYJ7X-mdERz-Fe;I&TlsskHupDVxwPbcZZO;uel?I5>;*O za1}7Gqyv`=D<|r8;cw;(X>$jp;=*6cW~}g&Hgkce0|{$B1X?mLZEgn@k2}9Wt1OPd zU#n#1tBcj8YBuXGX4pI%A(hMT(X<|L&n11Ez6L28ZzXFqKw3p6H~mJS)if@C$UIM+ zfcsJ@s8_sJp{cV+EefI z>qR_zXZ+$S(?dU%zG7ycOK`N19MojP)l8OvN#}5z=|eT%kfMqKAt$CJ)VR{JbG0i}d|iNSfHuXdJEzhYQzd(c(lEX;Gk_qaL5W$@`mb`<6 zhDYg7lE@emV;o7$xQk@{wAiULt0hDkCrpAJApzTZQz%CTHhqj+XS!RRJC(T5JToRx z&e5w?dtHblyU;{*pmSf%WwLX2Nd(e?oNysz7MiTyz?yF74zpQXRDQRc%P;IAc)%3c zc~DrA%UDN>poDiEVT2-7L4uF<$8wl+2+2>#`cIL}TsE)^g~(8268V$FHzN&ygf7*YgYlItdG!kP3rL%=<`w_;}9| z6Io6Oii`&+f#p_htgkf$KxT-CFeDw1%}%%xEnIjkkwcdskWEgUPqT8RLna%c?GI7S zZ#`AhEv%vV85D2#RD4wNC4?GgQG?$P4SA-SMWh7!9JYo!zv!1&p-xJvN2uX#KfEI0 zk5Tw;KZO5U_rmx*K?Mi>Qn1DSKS)c0HnTwm?njXvRN!8n4ECs882flGs;iNG#s7rS z{p0qz96A3aqTTG>BhKLbLN^lcJ!)7-T;I%me$$elX^-KOU`BxF2EE6hY50 kUeB@9+ebmTliD4VC@G;f{P$q@_`mzi!R`^=QSFWY2WMDllK=n! literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch12/Ch12.csproj b/9781430248606_sourcecode/Ch12/Ch12.csproj new file mode 100644 index 0000000..4830487 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Ch12.csproj @@ -0,0 +1,110 @@ + + + + Debug + x86 + 8.0.30703 + 2.0 + {AECCD015-05F0-47E3-973F-156EB64C956A} + Exe + Properties + Ch12 + Ch12 + v4.5 + + + 512 + + + x86 + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + true + false + + + x86 + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch12/Listing 12-1.cs b/9781430248606_sourcecode/Ch12/Listing 12-1.cs new file mode 100644 index 0000000..852870c --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-1.cs @@ -0,0 +1,23 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List() +// { +// "One", "Two", "Three", "Four", "Five", "Six", "Seven" +// }; + +// var numbersLengthThree = +// numbers.Where(x => x.Length == 3).Select(x => x).ToList(); + +// numbersLengthThree.ForEach(x => Console.WriteLine(x)); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-10.cs b/9781430248606_sourcecode/Ch12/Listing 12-10.cs new file mode 100644 index 0000000..20c06cd --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-10.cs @@ -0,0 +1,29 @@ +//using System; +//using System.Collections.Generic; +//using System.Linq; +//using System.Text; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList series = new List() +// { +// 1,2,3,4,5,6,7 +// }; +// Console.WriteLine("When the condition is true"); +// series.TakeWhile(number => number < 3) +// .ToList() +// .ForEach(number => Console.Write(string.Format("{0}\t", +// number))); + +// Console.WriteLine("\nOn first false return iteration will stop "); +// series.TakeWhile(number => number > 3) +// .ToList() +// .ForEach(number => Console.Write(string.Format("{0}\t", +// number))); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-11.cs b/9781430248606_sourcecode/Ch12/Listing 12-11.cs new file mode 100644 index 0000000..4afbf1c --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-11.cs @@ -0,0 +1,26 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList listOne = new List() +// { +// 1,2,3,4,5,6 +// }; + +// IList listTwo = new List() +// { +// 6,7,8,9,10 +// }; + +// var result = listOne.Concat(listTwo).ToList(); +// result.ForEach(x => Console.Write(string.Format("{0}\t", x))); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-12.cs b/9781430248606_sourcecode/Ch12/Listing 12-12.cs new file mode 100644 index 0000000..64aa8f5 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-12.cs @@ -0,0 +1,63 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList persons = new List() +// { +// new Person(){ Name="Person F", Address= "Address of F", +// Id= 111116}, +// new Person(){ Name="Person G", Address= "Address of G", +// Id= 111117}, +// new Person(){ Name="Person C", Address= "Address of C", +// Id= 111113}, +// new Person(){ Name="Person B", Address= "Address of B", +// Id= 111112}, +// new Person(){ Name="Person D", Address= "Address of D", +// Id= 111114}, +// new Person(){ Name="Person A", Address= "Address of A", +// Id= 111111}, +// new Person(){ Name="Person E", Address= "Address of E", +// Id= 111115} +// }; + +// var result = +// persons.OrderBy(person => person.Id).ThenBy(person => person); + +// foreach (Person person in result) +// { +// Console.WriteLine("{0,-15} {1,-20}{2,-20}", +// person.Name, +// person.Address, +// person.Id); +// } +// } +// } + +// public class Person +// { +// public string Name +// { +// get; +// set; +// } + +// public string Address +// { +// get; +// set; +// } + +// public double Id +// { +// get; +// set; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-16.cs b/9781430248606_sourcecode/Ch12/Listing 12-16.cs new file mode 100644 index 0000000..9e84da8 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-16.cs @@ -0,0 +1,20 @@ +//using System; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List() { 1, 2, 3, 4, 5 }; +// var reverseNumbers = numbers.Reverse(); + +// var result = reverseNumbers.ToList(); + +// result.ForEach(x => Console.Write("{0}\t", x)); +// Console.WriteLine(); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-18.cs b/9781430248606_sourcecode/Ch12/Listing 12-18.cs new file mode 100644 index 0000000..1f29ded --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-18.cs @@ -0,0 +1,71 @@ +//using System; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// List persons; +// List
addresses; + +// InitializeData(out persons, out addresses); + +// /* persons - Outer Sequence */ +// var result = persons.Join( +// /*addresses - Inner Sequence*/ +// addresses, +// /* Outer Key Selector */ +// person => person, +// /* Inner Key Selector */ +// address => address.AddressOf, +// /* Result Selector */ +// (person, address) => +// new +// { +// PersonName = person.PersonName, +// AddressDetails = address.AddressDetails +// } +// ); + +// result.ToList(). +// ForEach(personAddress => +// Console.WriteLine("{0} \t{1}", +// personAddress.PersonName, personAddress.AddressDetails)); +// } + +// private static void InitializeData( +// out List persons, out List
addresses) +// { +// var personA = new Person { PersonID = "PA_01", PersonName = "A" }; +// var personB = new Person { PersonID = "PB_01", PersonName = "B" }; +// var personC = new Person { PersonID = "PC_01", PersonName = "C" }; + +// var addressOne = new Address +// { +// AddressOf = personA, +// AddressDetails = "Mystery Street,Jupiter" +// }; +// var addressTwo = new Address { AddressOf = personA, AddressDetails = "Dark Street,Mars" }; +// var addressThree = new Address { AddressOf = personB, AddressDetails = "Sun Street,Jupiter" }; +// var addressFour = new Address { AddressOf = personC, AddressDetails = "Dry Street,Neptune" }; + +// persons = new List { personA, personB, personC }; +// addresses = new List
{ addressOne, addressTwo, addressThree, addressFour }; +// } +// } + +// public class Person +// { +// public string PersonID { get; set; } +// public string PersonName { get; set; } +// } + +// public class Address +// { +// public Person AddressOf { get; set; } +// public string AddressDetails { get; set; } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-21.cs b/9781430248606_sourcecode/Ch12/Listing 12-21.cs new file mode 100644 index 0000000..55c087d --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-21.cs @@ -0,0 +1,70 @@ +//using System; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// List persons; +// List
addresses; +// InitializeData(out persons, out addresses); + +// /* persons - Outer Sequence */ +// var result = persons.GroupJoin( +// /*addresses - Inner Sequence*/ +// addresses, +// /* Outer Key Selector */ +// person => person, +// /* Inner Key Selector */ +// address => address.AddressOf, +// /* Result Selector */ +// (person, address) => +// new +// { +// PersonName = person.PersonName, +// AddressDetails = +// address.Select(innerAddress => innerAddress.AddressDetails) +// } +// ); + +// var rr = result.ToList(); +// foreach (var item in result) +// { +// Console.WriteLine("{0}", item.PersonName); +// item.AddressDetails.ToList().ForEach( +// address => Console.WriteLine(address)); +// } +// } + +// private static void InitializeData( +// out List persons, out List
addresses) +// { +// var personA = new Person { PersonID = "PA_01", PersonName = "A" }; +// var personB = new Person { PersonID = "PB_01", PersonName = "B" }; +// var personC = new Person { PersonID = "PC_01", PersonName = "C" }; + +// var addressOne = new Address { AddressOf = personA, AddressDetails = "Mystery Street,Jupiter" }; +// var addressTwo = new Address { AddressOf = personA, AddressDetails = "Dark Street,Mars" }; +// var addressThree = new Address { AddressOf = personB, AddressDetails = "Sun Street,Jupiter" }; +// var addressFour = new Address { AddressOf = personC, AddressDetails = "Dry Street,Neptune" }; + +// persons = new List { personA, personB, personC }; +// addresses = new List
{ addressOne, addressTwo, addressThree, addressFour }; +// } +// } + +// public class Person +// { +// public string PersonID { get; set; } +// public string PersonName { get; set; } +// } + +// public class Address +// { +// public Person AddressOf { get; set; } +// public string AddressDetails { get; set; } +// } +//} \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch12/Listing 12-22.cs b/9781430248606_sourcecode/Ch12/Listing 12-22.cs new file mode 100644 index 0000000..26fee2c --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-22.cs @@ -0,0 +1,57 @@ +//using System; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// List persons; +// InitializeData(out persons); + +// var result = persons.GroupBy( +// person => person.PersonAge, +// person => person.PersonID, +// (Age, Id) => +// new +// { +// PersonAge = Age, +// PersonID = Id +// } +// ); + +// Console.WriteLine("Age group \t No of person \t Persons are"); +// result.ToList().ForEach(item => +// Console.WriteLine( +// string.Format("{0,5} \t {1,15} \t {2,-33}", +// item.PersonAge, +// item.PersonID.Count(), +// string.Join(",", item.PersonID)))); +// } + +// private static void InitializeData( +// out List persons) +// { +// persons = new List +// { +// new Person { PersonID = "PA_01", PersonAge = 6 }, +// new Person { PersonID = "PB_01", PersonAge = 7 }, +// new Person { PersonID = "PC_01", PersonAge = 7 }, +// new Person { PersonID = "PD_01", PersonAge = 4 }, +// new Person { PersonID = "PE_01", PersonAge = 7 }, +// new Person { PersonID = "PF_01", PersonAge = 5 }, +// new Person { PersonID = "PG_01", PersonAge = 5 }, +// new Person { PersonID = "PH_01", PersonAge = 9 }, +// new Person { PersonID = "PI_01", PersonAge = 9 } +// }; +// } +// } + +// public class Person +// { +// public string PersonID { get; set; } +// public int PersonAge { get; set; } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-23.cs b/9781430248606_sourcecode/Ch12/Listing 12-23.cs new file mode 100644 index 0000000..46990d7 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-23.cs @@ -0,0 +1,21 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List() +// { +// 1,1,1,2,2,2,3,3,3 +// }; + +// var distinctedNumbers = numbers.Distinct().ToList(); +// distinctedNumbers.ForEach(x => Console.Write(string.Format("{0}\t", x))); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-25.cs b/9781430248606_sourcecode/Ch12/Listing 12-25.cs new file mode 100644 index 0000000..2baf406 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-25.cs @@ -0,0 +1,25 @@ +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; +//using System; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList firstNumbers = new List() +// { +// 1,2,3,4,5,6,7 +// }; +// IList secondNumbers = new List() +// { +// 1,2,3 +// }; + +// var result = firstNumbers.Except(secondNumbers).ToList(); +// result.ForEach(x => Console.Write(string.Format("{0}\t", x))); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-27.cs b/9781430248606_sourcecode/Ch12/Listing 12-27.cs new file mode 100644 index 0000000..7743ef6 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-27.cs @@ -0,0 +1,27 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList firstList = new List() +// { +// 1,2,3,4 +// }; + +// IList secondList = new List() +// { +// 7,9,3,4,5,6,7 +// }; + +// var result = firstList.Union(secondList); +// result.ToList().ForEach(x => +// Console.Write(string.Format("{0}\t", x))); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-29.cs b/9781430248606_sourcecode/Ch12/Listing 12-29.cs new file mode 100644 index 0000000..f858b4c --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-29.cs @@ -0,0 +1,19 @@ +//using System; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList listA = new List() { 1, 2, 3, 4, 5 }; +// IList listB = new List() { 4, 5 }; + +// var intersectResult = listA.Intersect(listB); + +// intersectResult.ToList().ForEach(x => Console.Write("{0}\t", x)); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-31.cs b/9781430248606_sourcecode/Ch12/Listing 12-31.cs new file mode 100644 index 0000000..15a56a5 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-31.cs @@ -0,0 +1,23 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List() +// { +// 1,2,3,4,5,6,7,8,9,10 +// }; + +// Console.WriteLine("Sum of the numbers :{0}", numbers.Sum()); + +// Console.WriteLine("Sum of the original numbers x 2 :{0}", +// numbers.Sum(x => x * 2)); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-32.cs b/9781430248606_sourcecode/Ch12/Listing 12-32.cs new file mode 100644 index 0000000..c854e0e --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-32.cs @@ -0,0 +1,20 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList firstList = new List() +// { +// 1,2,3,4 +// }; + +// Console.WriteLine(firstList.LongCount()); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-33.cs b/9781430248606_sourcecode/Ch12/Listing 12-33.cs new file mode 100644 index 0000000..6b8d072 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-33.cs @@ -0,0 +1,22 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List() +// { +// 1,2,3,4,5,6,7,8,9,10 +// }; + +// Console.WriteLine("Max of the numbers :{0}", numbers.Max()); +// Console.WriteLine("Max of the original numbers x2 :{0}", +// numbers.Max(x => x * 2)); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-34.cs b/9781430248606_sourcecode/Ch12/Listing 12-34.cs new file mode 100644 index 0000000..81c4bae --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-34.cs @@ -0,0 +1,23 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List() +// { +// 1,2,3,4,5,6,7,8,9,10 +// }; + +// Console.WriteLine("Min of the numbers :{0}", numbers.Min()); + +// Console.WriteLine("Min of the original numbers x2 :{0}", +// numbers.Min(x => x * 2)); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-35.cs b/9781430248606_sourcecode/Ch12/Listing 12-35.cs new file mode 100644 index 0000000..1d3c184 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-35.cs @@ -0,0 +1,23 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList listOne = new List() +// { +// "One","Two","Three" +// }; + +// var result = listOne.Count(); + +// var fourOrMoreCharacters = listOne.Count(item => item.Length > 3); +// Console.WriteLine("{0}\n{1}", result, fourOrMoreCharacters); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-37.cs b/9781430248606_sourcecode/Ch12/Listing 12-37.cs new file mode 100644 index 0000000..506886e --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-37.cs @@ -0,0 +1,23 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List() +// { +// 1,2,3,4,5,6,7,8,9,10 +// }; +// Console.WriteLine("Average of the numbers :{0}", +// numbers.Average()); + +// Console.WriteLine("Average of the original numbers x2 :{0}", +// numbers.Average((x => x * 2))); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-39.cs b/9781430248606_sourcecode/Ch12/Listing 12-39.cs new file mode 100644 index 0000000..b236d26 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-39.cs @@ -0,0 +1,24 @@ +//using System; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { + +// List numbers = new List() +// { +// "One", "Two", "Three", "Four" +// }; + +// var result = numbers.Aggregate( +// (aggregatedValue, nextItem) => +// nextItem + aggregatedValue); + +// Console.WriteLine("Aggregated value : {0}", result); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-41.cs b/9781430248606_sourcecode/Ch12/Listing 12-41.cs new file mode 100644 index 0000000..f08bfe1 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-41.cs @@ -0,0 +1,30 @@ +//using System; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// List items = new List() +// { +// "One", "Two", "Three", "Four" +// }; +// var result = items.Aggregate( +// /* Zero as seed, to use the initial aggregate value */ +// "Zero", +// (temporaryAggregatedValue, nextItem) => +// { +// Console.WriteLine(temporaryAggregatedValue); +// return nextItem + temporaryAggregatedValue; +// }, +// aggregatedResult => +// string.Format("Final result : {0}", +// aggregatedResult.ToUpper()) +// ); +// Console.WriteLine(result); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-43.cs b/9781430248606_sourcecode/Ch12/Listing 12-43.cs new file mode 100644 index 0000000..03f4c86 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-43.cs @@ -0,0 +1,22 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List() +// { +// "One", "Two", "Three", "Four", "Five", "Six", "Seven" +// }; + +// if (numbers.All(x => x.Length >= 3)) +// Console.WriteLine( +// "All numbers have at least three characters."); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-44.cs b/9781430248606_sourcecode/Ch12/Listing 12-44.cs new file mode 100644 index 0000000..e7a3ba8 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-44.cs @@ -0,0 +1,24 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List() +// { +// "One", "Two", "Three", "Four", "Five", "Six", "Seven" +// }; + +// if (numbers.Any()) +// Console.WriteLine("Contains"); + +// if (numbers.Any(x => x.Length >= 3)) +// Console.WriteLine("Contains"); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-47.cs b/9781430248606_sourcecode/Ch12/Listing 12-47.cs new file mode 100644 index 0000000..16f1b38 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-47.cs @@ -0,0 +1,21 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList listOne = new List() +// { +// 1,2,3,4,5 +// }; + +// var resultAsTrue = listOne.Contains(2); +// var resultAsFalse = listOne.Contains(200); +// Console.WriteLine("{0}\n{1}", resultAsTrue, resultAsFalse); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-49.cs b/9781430248606_sourcecode/Ch12/Listing 12-49.cs new file mode 100644 index 0000000..3804d5e --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-49.cs @@ -0,0 +1,25 @@ +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; +//using System; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List() +// { +// 1,2,3,4,5,6,7 +// }; + +// var firstItem = numbers.First(); +// var firstItemBasedOnConditions = numbers.First(item => item > 3); + +// Console.WriteLine("{0}\n{1}", +// firstItem, +// firstItemBasedOnConditions); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-5.cs b/9781430248606_sourcecode/Ch12/Listing 12-5.cs new file mode 100644 index 0000000..e0398c7 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-5.cs @@ -0,0 +1,21 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List() +// { +// "One","Two","Three", "Four","Five" +// }; + +// var result = numbers.Skip(2); +// result.ToList().ForEach(number => Console.WriteLine(number)); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-51.cs b/9781430248606_sourcecode/Ch12/Listing 12-51.cs new file mode 100644 index 0000000..a16dffe --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-51.cs @@ -0,0 +1,35 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList firstNumbers = new List(); + +// IList secondNumbers = new List() +// { +// 1,2,3,4,5,6,7 +// }; + +// var firstItemOfFirstList = firstNumbers.FirstOrDefault(); +// var firstItemIfFirstListBasedOnConditions = +// firstNumbers.FirstOrDefault(item => item > 3); + +// var firstItemOfSecondList = secondNumbers.FirstOrDefault(); +// var firstItemOfSecondListBasedOnConditions = +// secondNumbers.FirstOrDefault(item => item > 3); + +// Console.Write(string.Format("{0}\t{1}\t{2}\t{3}", +// firstItemOfFirstList, +// firstItemIfFirstListBasedOnConditions, +// firstItemOfSecondList, +// firstItemOfSecondListBasedOnConditions +// )); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-54.cs b/9781430248606_sourcecode/Ch12/Listing 12-54.cs new file mode 100644 index 0000000..4a7b9d8 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-54.cs @@ -0,0 +1,23 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List() +// { +// 1,2,3,4,5,6,7 +// }; + +// var lastItem = numbers.Last(); +// Console.WriteLine(lastItem); +// var lastItemBasedOnConditions = numbers.Last(item => item > 3); +// Console.WriteLine(lastItemBasedOnConditions); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-57.cs b/9781430248606_sourcecode/Ch12/Listing 12-57.cs new file mode 100644 index 0000000..9d17216 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-57.cs @@ -0,0 +1,35 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList firstNumbers = new List(); + +// IList secondNumbers = new List() +// { +// 1,2,3,4,5,6,7 +// }; + +// var lastItemOfFirstList = firstNumbers.LastOrDefault(); +// var lastItemIfFirstListBasedOnConditions = +// firstNumbers.LastOrDefault(item => item > 3); + +// var lastItemOfSecondList = secondNumbers.LastOrDefault(); +// var lastItemOfSecondListBasedOnConditions = +// secondNumbers.LastOrDefault(item => item > 3); + +// Console.Write(string.Format("{0}\t{1}\t{2}\t{3}", +// lastItemOfFirstList, +// lastItemIfFirstListBasedOnConditions, +// lastItemOfSecondList, +// lastItemOfSecondListBasedOnConditions +// )); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-58.cs b/9781430248606_sourcecode/Ch12/Listing 12-58.cs new file mode 100644 index 0000000..de24ce0 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-58.cs @@ -0,0 +1,20 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List +// { +// "One" +// }; +// var result = numbers.Single(); +// Console.WriteLine("{0}", result); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-60.cs b/9781430248606_sourcecode/Ch12/Listing 12-60.cs new file mode 100644 index 0000000..4288bb9 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-60.cs @@ -0,0 +1,20 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List +// { +// "One","Four" +// }; +// var result = numbers.Single(x => x.Length > 3); +// Console.WriteLine("{0}", result); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-61.cs b/9781430248606_sourcecode/Ch12/Listing 12-61.cs new file mode 100644 index 0000000..da55642 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-61.cs @@ -0,0 +1,29 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList listStringWithoutItem = new List(); +// IList listStringWithItem = new List() { "One" }; +// IList listInt = new List(); +// IList listChar = new List(); +// IList listLong = new List(); +// IList listDouble = new List(); + +// Console.WriteLine("string : {0}", +// listStringWithoutItem.SingleOrDefault()); +// Console.WriteLine("string : {0}", +// listStringWithItem.SingleOrDefault()); +// Console.WriteLine("int : {0}", listInt.SingleOrDefault()); +// Console.WriteLine("char : {0}", listChar.SingleOrDefault()); +// Console.WriteLine("long : {0}", listLong.SingleOrDefault()); +// Console.WriteLine("double : {0}", listDouble.SingleOrDefault()); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-63.cs b/9781430248606_sourcecode/Ch12/Listing 12-63.cs new file mode 100644 index 0000000..d8b1c7e --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-63.cs @@ -0,0 +1,21 @@ +//using System; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List() +// { +// "One","Two","Three" +// }; + +// var elementAt = numbers.ElementAt(1); + +// Console.WriteLine(elementAt); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-66.cs b/9781430248606_sourcecode/Ch12/Listing 12-66.cs new file mode 100644 index 0000000..c3f6990 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-66.cs @@ -0,0 +1,39 @@ +//using System; +//using System.Collections.Generic; +//using System.Linq; +//using System.Linq.Expressions; +//namespace Ch12 +//{ +// public struct MyStruct +// { +// public string Name { get; set; } +// } +// public class Person +// { +// public string PersonID { get; set; } +// public int PersonAge { get; set; } +// } +// class Program +// { +// static void Main(string[] args) +// { +// List series = new List { "One", "Two", "Three" }; +// List names = new List +// { +// new MyStruct{ Name="A"}, +// new MyStruct{ Name="B"}, +// }; +// List persons = new List +// { +// new Person { PersonID = "PA_01", PersonAge = 6 }, +// new Person { PersonID = "PB_01", PersonAge = 7 }, +// }; +// // outout will be null +// var item = series.ElementAtOrDefault(8); +// // Output contain an instnce of MyStruct in where Name will be null +// var name = names.ElementAtOrDefault(8); +// //Output will be null +// var person = persons.ElementAtOrDefault(8); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-67.cs b/9781430248606_sourcecode/Ch12/Listing 12-67.cs new file mode 100644 index 0000000..b108a82 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-67.cs @@ -0,0 +1,44 @@ +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { + +// IList persons = new List(); +// IList numbers = new List(); +// IList names = new List(); +// /* Output: A list with 1 item with the null value */ +// var defaultPersons = persons.DefaultIfEmpty(); +// /*Output: A list with 1 item with the 0 value */ +// var defaultNumbers = numbers.DefaultIfEmpty().ToList(); +// /* Output: A list with 1 item with the null value */ +// var defaultNames = names.DefaultIfEmpty(); +// } +// } + +// class Person +// { +// public string Name +// { +// get; +// set; +// } + +// public string Address +// { +// get; +// set; +// } + +// public int Age +// { +// get; +// set; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-69.cs b/9781430248606_sourcecode/Ch12/Listing 12-69.cs new file mode 100644 index 0000000..7ff5648 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-69.cs @@ -0,0 +1,15 @@ +//using System; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// var emptyList = Enumerable.Empty(); + +// Console.WriteLine(emptyList.Count()); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-7.cs b/9781430248606_sourcecode/Ch12/Listing 12-7.cs new file mode 100644 index 0000000..2e94fef --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-7.cs @@ -0,0 +1,21 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List() +// { +// "One","Two","Three", "Four","Five" +// }; + +// var result = numbers.SkipWhile(number => number.Length == 3); +// result.ToList().ForEach(number => Console.WriteLine(number)); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-72.cs b/9781430248606_sourcecode/Ch12/Listing 12-72.cs new file mode 100644 index 0000000..6a0fb75 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-72.cs @@ -0,0 +1,14 @@ +//using System; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Enumerable.Range(1, 10).ToList().ForEach(x => +// Console.Write("{0}\t", x)); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-75.cs b/9781430248606_sourcecode/Ch12/Listing 12-75.cs new file mode 100644 index 0000000..d51075e --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-75.cs @@ -0,0 +1,15 @@ +//using System; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Enumerable.Repeat(1, 5).ToList(). +// ForEach(x => Console.Write("{0}\t", x)); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-76.cs b/9781430248606_sourcecode/Ch12/Listing 12-76.cs new file mode 100644 index 0000000..02ade3c --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-76.cs @@ -0,0 +1,18 @@ +//using System; +//using System.Collections; +//using System.Linq; +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// ArrayList numbers = new ArrayList(); +// numbers.Add("One"); +// numbers.Add("Two"); +// numbers.Add("Three"); +// numbers.Cast().Select(number => number).ToList().ForEach( +// number => Console.Write("{0}\t", number)); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-77.cs b/9781430248606_sourcecode/Ch12/Listing 12-77.cs new file mode 100644 index 0000000..41bbbbf --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-77.cs @@ -0,0 +1,22 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList firstList = new List() +// { +// 1,2,3,4 +// }; + +// var result = firstList.ToArray(); +// result.ToList().ForEach(x => +// Console.Write(string.Format("{0}\t", x))); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-78.cs b/9781430248606_sourcecode/Ch12/Listing 12-78.cs new file mode 100644 index 0000000..9c9d063 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-78.cs @@ -0,0 +1,35 @@ +//using System; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List() +// { +// "One", +// "Two", +// 1, +// 2, +// "Three", +// new Person +// { +// Name="A Person" +// } +// }; + +// var filteredNumbers = numbers.OfType(); + +// filteredNumbers.ToList().ForEach(x => Console.Write("{0}\t", x)); +// Console.WriteLine(); +// } +// } + +// public class Person +// { +// public string Name { get; set; } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-79.cs b/9781430248606_sourcecode/Ch12/Listing 12-79.cs new file mode 100644 index 0000000..17b236f --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-79.cs @@ -0,0 +1,58 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList persons = new List() +// { +// new Person(){ Name="Person A", Address= "Address of A", +// Id= 111111}, +// new Person(){ Name="Person B", Address= "Address of B", +// Id= 111112}, +// new Person(){ Name="Person C", Address= "Address of C", +// Id= 111113}, +// new Person(){ Name="Person D", Address= "Address of D", +// Id= 111114}, +// }; + +// var result = persons.ToDictionary(person => person.Id); + +// foreach (KeyValuePair person in result) +// { +// Console.WriteLine("{0,-15} {1,-20}{2,-20}{3,-20}", +// person.Key, +// person.Value.Name, +// person.Value.Address, +// person.Value.Id); +// } +// } +// } + + +// public class Person +// { +// public string Name +// { +// get; +// set; +// } + +// public string Address +// { +// get; +// set; +// } + +// public double Id +// { +// get; +// set; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-82.cs b/9781430248606_sourcecode/Ch12/Listing 12-82.cs new file mode 100644 index 0000000..58be915 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-82.cs @@ -0,0 +1,23 @@ +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; +//using System; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList numbers = new List() +// { +// 1,2,3,4,5,6,7,8,9,10 +// }; + +// var result = numbers.Where(x => x > 3).ToList(); + +// result.ForEach(x => Console.Write("{0}\t", x)); +// Console.WriteLine(); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-84.cs b/9781430248606_sourcecode/Ch12/Listing 12-84.cs new file mode 100644 index 0000000..ff0f0da --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-84.cs @@ -0,0 +1,51 @@ +//using System; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// List persons = CreatePersonList(); + +// var result = persons.ToLookup( +// (key) => key.Name, +// (groupItem) => groupItem.Address); + +// result.ToList().ForEach(item => +// { +// Console.Write("Key:{0,11}\nValue:\t{1,12}\n", +// item.Key, +// string.Join("\n\t", item.Select(groupItem => +// groupItem).ToArray())); +// }); +// } + +// private static List CreatePersonList() +// { +// return new List() +// { +// new Person{ Name="APerson", Address="APerson's Address"}, +// new Person{ Name="AAPerson", Address="AAPerson's Address"}, +// new Person{ Name="APerson", +// Address="APerson's Second Address"}, +// new Person{ Name="BPerson", Address="BPerson's Address"}, +// new Person{ Name="BBPerson", Address="BBPerson's Address"}, +// new Person{ Name="BPerson", +// Address="BPerson's Second Address"}, +// new Person{ Name="CPerson", Address="CPerson's Address"}, +// new Person{ Name="CCPerson", Address="CCPerson's Address"}, +// new Person{ Name="CPerson", +// Address="CPerson's Second Address"}, +// }; +// } +// } + +// public class Person +// { +// public string Name { get; set; } +// public string Address { get; set; } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-85.cs b/9781430248606_sourcecode/Ch12/Listing 12-85.cs new file mode 100644 index 0000000..9777571 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-85.cs @@ -0,0 +1,27 @@ +//using System; +//using System.Collections; +//using System.Collections.Generic; +//using System.Linq; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList firstList = new List() +// { +// 1,2,3,4 +// }; + +// IList secondList = new List() +// { +// "One","Two","Three","Four" +// }; + +// var result = firstList.Zip(secondList, (x, y) => x + ":\t" + y); + +// result.ToList().ForEach(x => Console.WriteLine(x)); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Listing 12-9.cs b/9781430248606_sourcecode/Ch12/Listing 12-9.cs new file mode 100644 index 0000000..ef1f469 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Listing 12-9.cs @@ -0,0 +1,23 @@ +//using System; +//using System.Collections.Generic; +//using System.Linq; +//using System.Text; + +//namespace Ch12 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// IList series = new List() +// { +// 1,2,3,4,5,6,7 +// }; + +// series.Take(4) +// .ToList() +// .ForEach(number => +// Console.Write(string.Format("{0}\t", number))); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch12/Program.cs b/9781430248606_sourcecode/Ch12/Program.cs new file mode 100644 index 0000000..6453256 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Program.cs @@ -0,0 +1,23 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Linq; + +namespace Ch12 +{ + class Program + { + static void Main(string[] args) + { + IList numbers = new List() + { + "One", "Two", "Three", "Four", "Five", "Six", "Seven" + }; + + var numbersLengthThree = + numbers.Where(x => x.Length == 3).Select(x => x).ToList(); + + numbersLengthThree.ForEach(x => Console.WriteLine(x)); + } + } +} diff --git a/9781430248606_sourcecode/Ch12/Properties/AssemblyInfo.cs b/9781430248606_sourcecode/Ch12/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..381030d --- /dev/null +++ b/9781430248606_sourcecode/Ch12/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Ch12")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Ch12")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("3ae25c50-bae2-46f7-8d37-8aa4115bc4b8")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/9781430248606_sourcecode/Ch12/app.config b/9781430248606_sourcecode/Ch12/app.config new file mode 100644 index 0000000..c5e1dae --- /dev/null +++ b/9781430248606_sourcecode/Ch12/app.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch12/bin/Debug/Ch12.vshost.exe b/9781430248606_sourcecode/Ch12/bin/Debug/Ch12.vshost.exe new file mode 100644 index 0000000000000000000000000000000000000000..212bd7f4bd85638db6f1427777e53df0c87cd21a GIT binary patch literal 22392 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 + + diff --git a/9781430248606_sourcecode/Ch12/bin/Debug/Ch12.vshost.exe.manifest b/9781430248606_sourcecode/Ch12/bin/Debug/Ch12.vshost.exe.manifest new file mode 100644 index 0000000..061c9ca --- /dev/null +++ b/9781430248606_sourcecode/Ch12/bin/Debug/Ch12.vshost.exe.manifest @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/9781430248606_sourcecode/Ch12/bin/Release/Ch12.exe b/9781430248606_sourcecode/Ch12/bin/Release/Ch12.exe new file mode 100644 index 0000000000000000000000000000000000000000..83e236f25c06c65ba96d2b825e28d27ae48e3225 GIT binary patch literal 5632 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 literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch12/bin/Release/Ch12.exe.config b/9781430248606_sourcecode/Ch12/bin/Release/Ch12.exe.config new file mode 100644 index 0000000..e365603 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/bin/Release/Ch12.exe.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch12/bin/Release/Ch12.pdb b/9781430248606_sourcecode/Ch12/bin/Release/Ch12.pdb new file mode 100644 index 0000000000000000000000000000000000000000..f2553fc6b94e4e1c67320d44a014d2c668711bb1 GIT binary patch literal 13824 zcmeHNT}&KR6ut}C!UEN$6_qw*MQV_r{Xv&Dl@!VX4Z0g>R;@H7bXf+Nvh3jQU`yh| zw2Afifd_5c#3oduRxOE%jSp&*Moo>T#>Q4(8q=gk6MdjoeW(vDe&6g2YzZQSg1F2f z-=3L!@40j5oO{o?_Y6Tf5?2yRkLvWh{S_6?V5r%-$>s6n+lv}Q0+byMTD^46PAl+!zK5u&T$S*&C>lmp^-sc`YxXaOV-f^m2h-=v`r*^*;tN*6^K;XmQ z8ZPXQzkP($hIId-ZRe^Fe{sB0F8=Z2Pe(VcLfJYX2e1RT0l7dPkPoZ@9028S2UY_X zExiVAmHmCIp8M|lXYULb9jI#>ue~&G+CCevL|X`lFlelKPtpMvJz@p`$fg4wDT%m2A;cy<=($SzO z{T)sF2Bo;_zpvWkt?mdZL-B~@SGpy=vT0vO+s@$i5vk`Q9gmX0n; zOS*IK*_^4Db5d6v40@!*!v^bWrXvD$TYOwTn{6ScG;)+`6gHmY9k$Ivw;q)BEuEh2tpJ>kWT(lWahV z^_unE<4l)tRED~u2!18#pGr-wuie_)*(t|lHK0VoQ4eD3Dp4)6vc9bQ^~?wD-?x0S zF(>2W_fGC+|3T4+I-IM}0ms2JG~b2Sl=~h0BtWv^&$LlK?vLxG`Z-+V7*M8d0LOV; zD*?w@Tx0A;pPCySFR0akuLW-g$GJ{>0{l+!esJsoH4Pl!1hhlocY~h*zXv>DG^76@ zP!0GDJPf`I*a-vx))TGB71+g}kmVi(uci~PoxnptE$|pH2s{tG23WK(4R9}Cl;gh2 zIh2P6WEQLkrgu^AhHLh(RKnWx4>@}{Ml(%$}QX|-GTQfY60 zCt^O=_7rvSxF)!ZH}?iqLN?klRzBEZ zbz&CTWn__sufe;`(^&H$YN|eRT{Xle^B0DQ&N7hc$k!X#CVdw39E?*W(~pre2VzF9 zg{8QKF!SZcqxEO$KYUP<*6I&WUK^?LIms2I$W8UT$XBnpytcCyms+`IU#J?}`|A5u z+qHwo#$F%#;oUtbb0Z1Y-xBLlggX`G{Qn88 zsZ`%@PV|{LV+G>^@`HM8VE>E_oL}5Wq{ap7e}JHn|Cs2{EwVIVX~5Eer2$I=mIhXq G2L1-D#u(rL literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch12/bin/Release/Ch12.vshost.exe b/9781430248606_sourcecode/Ch12/bin/Release/Ch12.vshost.exe new file mode 100644 index 0000000000000000000000000000000000000000..bb84a51ac4f20534146c09f2fd9c928d15a903b2 GIT binary patch literal 11600 zcmeG?2~<)?tG75|5OPOMcC{DsnWb(K|p-9Gz zCYX{WA(Jm;dIfQqiJ};SrLL}G(n&hl8zFy;j>apOj_;bS1<^27Oc^0Hz(7W(Czb%1 z@VUW90w!d%4!)s8@lWO`4L-o%@Fz33`3PxI|9bMyD%lrO3DBh`b_0^65V}%-gn|b^ zWm*RtcF<41tL^XP%x>1H-pWw-?KO@iBWB8={z?S^v{7pXzI!Jo%+8WXB|Jbhzz%$;+6FHiiU_~N3I z3EN^9UtHuj{7z%|8vGH<%)(m1Ea7^jMXH#Y>ya2$DiaMPF|c+I&NvSYVbqF9*~#r#ILj8dWjm251tb7C6J%*T7omHQ z|3QZ`M<(G55b{zd>0OBcT-q z$5D_+!Bh&aq+kUFn<&Vjy~Gre83lc5nD5M>aGT=)?fZgOM>nV`Kqv zI0bDf=!~2J||60WgZ0+&DGHhBHk2136`;HfS!lVrq~L;Qp?LLw4#2#K5zlOj)1BCy1d77#r{JpDO<77O@Xp{xhn!4xZ$h!p@= zFfDSIN{Pg1K}r~3)_Zst+KZ6#Bz!U1wTDViV=OmGAajRFq+hp^({qI>UpIiLVv=~h zxay+kDH5kh_;K;yXzG;G*Tj7I0^&~_{e-b1Ng|izo-6pOSGO>vq9h3^M-Ep;2n2i? z;VA;Ob9u6_h6EBx&>#pUI*0gkg>gyTxL$JaT8kGU;HGf+ao-Tzcp`=5x@Rq2jC5KA zDL81CbnCa%R49SU_|be|v6omoM|<(PaYE7-c~ay>L?^|?aX&MN4jh;n*m;M|z$BDt zLV?wpRH>I1yLLe*EkY6~5>Aj35>FW2!};IZ6RZg`l4U+2WpPr3Jg{aVFJ1yBKdala z!{Q|bH-_8;-f}`H`;N<(`ErFZ0s_H?nELq^^AiFst^h{IAPxchk}HJW2r40D)L?1| zN5+-NKyKu|BH5O9=>_$oO%{WM1RNkt$|LX>+U#yGW4SL{W#Dq<^-?pWTs_=s z+sMi))7<${{lWc@(;pS&e4xt(nf|K_4fiC?yA3+_%vvY*l!4@4iv}=BM|c$3*(8Ejv=a+B_=Ss*JEQXuIqpixQ3a_4(W> zyEKm#xtQrM)b=Fwn2Ghv>;fV#EMt&fQn_Nx)Omd`sf+@qw7IY%8d=~wU}z94&^xT# z?O1hMy$gBFV<=2Rx4X%UFBOAX2ZDn_3e*V(5c0klQtL7p%59=S80yz;986D8eMaINL%0wc8G%|*e$MEHmK74Q% z!Aa2qJ`Z*(ODar2$dFuS7_I+z60R6Fg7-`wLHR_mTT!wUQ^u&61Y`_zfv7uESG-PI zL=b$z5K9F^02Rvd;_$Xby>8#V-GB3vXN;}hekVw2b}%EC!sUQGG$K1h+L_tfM2e!P zOCtHUjw8EKEOAUULMMT4SGq-(nO(Kd^R74+p{XEA@0kR39#JP2L9k*3WE=-K98<(} zqe}k)-;w}E#jg-2r+wZ^?F0lS_7$G&N8TMKx*>Foia|&WS+)ZhjyMosg(Ghi3MD_V zlt8Ha0ra7)2BA8})Ao*tk&JOg@{U+nBp*Xj>4k4odB9b z6pKVuFB2+W3WHWIV5QK`MKb6of?7waV3?3D4|tM6FFxSozD0@ZgTuNz{_IdRDFbAO z)M2bA&`X3r0!GVV7PvbAj0da~>bA%RB0vJogpW-A5a@S}5mS7nfE2jYc(OeJxZnXV z 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 + + diff --git a/9781430248606_sourcecode/Ch12/bin/Release/Ch12.vshost.exe.manifest b/9781430248606_sourcecode/Ch12/bin/Release/Ch12.vshost.exe.manifest new file mode 100644 index 0000000..061c9ca --- /dev/null +++ b/9781430248606_sourcecode/Ch12/bin/Release/Ch12.vshost.exe.manifest @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/9781430248606_sourcecode/Ch12/obj/x86/Debug/Ch12.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch12/obj/x86/Debug/Ch12.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..a5937f1 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/obj/x86/Debug/Ch12.csproj.FileListAbsolute.txt @@ -0,0 +1,5 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch12\bin\Debug\Ch12.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch12\bin\Debug\Ch12.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch12\bin\Debug\Ch12.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch12\obj\x86\Debug\Ch12.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch12\obj\x86\Debug\Ch12.pdb diff --git a/9781430248606_sourcecode/Ch12/obj/x86/Debug/DesignTimeResolveAssemblyReferences.cache b/9781430248606_sourcecode/Ch12/obj/x86/Debug/DesignTimeResolveAssemblyReferences.cache new file mode 100644 index 0000000000000000000000000000000000000000..bdb56e351771e35e3db6120b7214db7572c08375 GIT binary patch literal 701 zcmaJ z)C*URd<94DFq4J?B4RB)dv?b&Z{AzB!5I62i{7-N8p69%m09CV?)hP*wB%Fa=8oSy z=e=%x1=cB3jxeC78z+_am4#6WmA687k#5%!8U+7M-Nc0OjS+Gz zGH>kWYMfSLifduPcBp7#B%E7wqa@fCZA{chXy8Pyc_nlOjG;xVe?(o4v}LYYB);2adFIc`46 znvO9OZjGI%{OoA@J3<$S>5AA}nDL`K4<$M3xYW8sotM&+Pyxa2W6i&A!yi`d5}~C{ z^mn9%^QT6tT!DFoYJyfrh`>?hgU6x40#R5>;*N zaOF{_q&=GpBPZ&0;cn(PQpp`A6&LPWCS#=WlS<}1M|+a3xy;j&I;rHgS8=%YmbJ>_ zn7M0}bhf%sU8-g>_ClIw=?I!!{(z-*k2^Nn+jKRPqOmJ!qrs$6q;k`3cv?M#!H=oq zh$gdNE5+&+r?qjanTxYh6VN*++$ygXxWlF`>e}3P@-P)nkyvBvnqv9Y`RLr{LW|BRs8DqPF;1~ zt`GUmDxO^9UmTTmz)z*GOf%0Vv$T+$smX?|sVp%nt)p$KkJM!C3S+z>MHM21UQJ0> z<4Vic`G7b$rWuBC1{7Tk#sw?WS43OF<;P4uznPuqs^QQU8oWBNmuR!yf!k78OerB> z!|b^RpCILWLzrFkT+QpOH{`0OZj=-mBEy74BEvw3qR}XUFVH_nN-d>X9g+@K&C-}g z#*fTpl3T_*2*F`yZ|{~akmozp@z^%y@^CKbTGEocwN$dMEFm3UIo~<+|9j&sEzt#Q zVKK9kooDIgmHpIh^SGl^?MEE;!wu^lR~L;AQnVjg6zrycD8J)574ileBxpZ!Xpo>` zy*T#~+{TB2jKyR4ID!PQKqP(-2>gs9i6a?9G7e;n+y@#V6F}D6#U315Ede@iQpwB! z!J5YVjdB1CQz!GrLh1}v_7LR8X@`6Qdc2=j&2=G;&5ct)wL14=E}fY(OTv>D%L$vA zD@)6n`D}V_et9vyc%XcNg@W7>bQG1}%+uvXGtVks4X6T8Sq9)!WJ)+E0m?11DwE6w zz+_m|I%4rp(T_>H@1OiWN2?U?0i+ly-Q9E~I5wkyfyfuZKlvU=xa&;}Q2BGHDO8{qwE>?d5Kv>g=jRP36}I8O T2FKrj{j*_k`~~IW{qcVRDp8i3 literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch12/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/9781430248606_sourcecode/Ch12/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch12/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/9781430248606_sourcecode/Ch12/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch12/obj/x86/Release/Ch12.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch12/obj/x86/Release/Ch12.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..b30ca09 --- /dev/null +++ b/9781430248606_sourcecode/Ch12/obj/x86/Release/Ch12.csproj.FileListAbsolute.txt @@ -0,0 +1,6 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch12\bin\Release\Ch12.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch12\bin\Release\Ch12.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch12\bin\Release\Ch12.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch12\obj\x86\Release\ResolveAssemblyReference.cache +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch12\obj\x86\Release\Ch12.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch12\obj\x86\Release\Ch12.pdb diff --git a/9781430248606_sourcecode/Ch12/obj/x86/Release/Ch12.exe b/9781430248606_sourcecode/Ch12/obj/x86/Release/Ch12.exe new file mode 100644 index 0000000000000000000000000000000000000000..83e236f25c06c65ba96d2b825e28d27ae48e3225 GIT binary patch literal 5632 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 literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch12/obj/x86/Release/Ch12.pdb b/9781430248606_sourcecode/Ch12/obj/x86/Release/Ch12.pdb new file mode 100644 index 0000000000000000000000000000000000000000..f2553fc6b94e4e1c67320d44a014d2c668711bb1 GIT binary patch literal 13824 zcmeHNT}&KR6ut}C!UEN$6_qw*MQV_r{Xv&Dl@!VX4Z0g>R;@H7bXf+Nvh3jQU`yh| zw2Afifd_5c#3oduRxOE%jSp&*Moo>T#>Q4(8q=gk6MdjoeW(vDe&6g2YzZQSg1F2f z-=3L!@40j5oO{o?_Y6Tf5?2yRkLvWh{S_6?V5r%-$>s6n+lv}Q0+byMTD^46PAl+!zK5u&T$S*&C>lmp^-sc`YxXaOV-f^m2h-=v`r*^*;tN*6^K;XmQ z8ZPXQzkP($hIId-ZRe^Fe{sB0F8=Z2Pe(VcLfJYX2e1RT0l7dPkPoZ@9028S2UY_X zExiVAmHmCIp8M|lXYULb9jI#>ue~&G+CCevL|X`lFlelKPtpMvJz@p`$fg4wDT%m2A;cy<=($SzO z{T)sF2Bo;_zpvWkt?mdZL-B~@SGpy=vT0vO+s@$i5vk`Q9gmX0n; zOS*IK*_^4Db5d6v40@!*!v^bWrXvD$TYOwTn{6ScG;)+`6gHmY9k$Ivw;q)BEuEh2tpJ>kWT(lWahV z^_unE<4l)tRED~u2!18#pGr-wuie_)*(t|lHK0VoQ4eD3Dp4)6vc9bQ^~?wD-?x0S zF(>2W_fGC+|3T4+I-IM}0ms2JG~b2Sl=~h0BtWv^&$LlK?vLxG`Z-+V7*M8d0LOV; zD*?w@Tx0A;pPCySFR0akuLW-g$GJ{>0{l+!esJsoH4Pl!1hhlocY~h*zXv>DG^76@ zP!0GDJPf`I*a-vx))TGB71+g}kmVi(uci~PoxnptE$|pH2s{tG23WK(4R9}Cl;gh2 zIh2P6WEQLkrgu^AhHLh(RKnWx4>@}{Ml(%$}QX|-GTQfY60 zCt^O=_7rvSxF)!ZH}?iqLN?klRzBEZ zbz&CTWn__sufe;`(^&H$YN|eRT{Xle^B0DQ&N7hc$k!X#CVdw39E?*W(~pre2VzF9 zg{8QKF!SZcqxEO$KYUP<*6I&WUK^?LIms2I$W8UT$XBnpytcCyms+`IU#J?}`|A5u z+qHwo#$F%#;oUtbb0Z1Y-xBLlggX`G{Qn88 zsZ`%@PV|{LV+G>^@`HM8VE>E_oL}5Wq{ap7e}JHn|Cs2{EwVIVX~5Eer2$I=mIhXq G2L1-D#u(rL literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch12/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch12/obj/x86/Release/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..07b3c3f4ee5fed366ba43aba788894072928574c GIT binary patch literal 5705 zcmeHLdruoj5VyfxFoYJ7X-mdERz-Fe;I&TlsskHupDVxwPbcZZO;uel?I5>;*O za1}7Gqyv`=D<|r8;cw;(X>$jp;=*6cW~}g&Hgkce0|{$B1X?mLZEgn@k2}9Wt1OPd zU#n#1tBcj8YBuXGX4pI%A(hMT(X<|L&n11Ez6L28ZzXFqKw3p6H~mJS)if@C$UIM+ zfcsJ@s8_sJp{cV+EefI z>qR_zXZ+$S(?dU%zG7ycOK`N19MojP)l8OvN#}5z=|eT%kfMqKAt$CJ)VR{JbG0i}d|iNSfHuXdJEzhYQzd(c(lEX;Gk_qaL5W$@`mb`<6 zhDYg7lE@emV;o7$xQk@{wAiULt0hDkCrpAJApzTZQz%CTHhqj+XS!RRJC(T5JToRx z&e5w?dtHblyU;{*pmSf%WwLX2Nd(e?oNysz7MiTyz?yF74v{G;zuV2_7j_XmU<&L! zC@jfktRqEG!aI&ILJ_JU!N>YzIm|hP`L+;{!dXfDXhllND`Loc?JQUgau7Vg+V6feI!48yyu9C zEGGm-#sieVa;rAh*BSyKGsHs}l8(n_C)|h@ENminn_zKC1Wlq$NR{*`NaVqeu=aaIa1VdsHrreLNS{)yTf$f5Pbg zar<13oPQG0ZuagGXK;R@8;SQGwfd3ww;UYq?v0KnO-!h6OA(Z#I~wCDlC56uxG4gN zq3AEMli0v(l{jI=5J8&Q>9!PsM{21MKw`&uhUCF%?%ErjGvjOIPM!YDeN9&z8xk*& z@a;G=zQOUC)AIHA7p*hnTjciwlzxYDCQgg&gb)?oZ=4z5 + + + Debug + x86 + 8.0.30703 + 2.0 + {ACD755CA-C7A8-4059-9474-57AD95C0AA28} + Exe + Properties + Ch13 + Ch13 + v4.5 + + + 512 + + + x86 + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + false + + + x86 + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch13/Ch13.csproj.user b/9781430248606_sourcecode/Ch13/Ch13.csproj.user new file mode 100644 index 0000000..55f44b9 --- /dev/null +++ b/9781430248606_sourcecode/Ch13/Ch13.csproj.user @@ -0,0 +1,6 @@ + + + + ShowAllFiles + + \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch13/Listing 13-1.cs b/9781430248606_sourcecode/Ch13/Listing 13-1.cs new file mode 100644 index 0000000..20d4424 --- /dev/null +++ b/9781430248606_sourcecode/Ch13/Listing 13-1.cs @@ -0,0 +1,22 @@ +//using System; + +//namespace Ch13 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// int a = 10, b = 5; +// Division div = new Division(); +// Console.WriteLine("{0}/{1}={2}", a, b, div.Divide(a, b)); +// } + +// public class Division +// { +// public int Divide(int a, int b) +// { +// return a / b; +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch13/Listing 13-10.cs b/9781430248606_sourcecode/Ch13/Listing 13-10.cs new file mode 100644 index 0000000..8bd72af --- /dev/null +++ b/9781430248606_sourcecode/Ch13/Listing 13-10.cs @@ -0,0 +1,32 @@ +//using System; + +//namespace Ch13 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// try +// { +// ExampleOfRethrow(); +// } +// catch (Exception exception) +// { +// Console.WriteLine(exception.StackTrace); +// } +// } + +// static void ExampleOfRethrow() +// { +// try +// { +// int a = 10, b = 0; +// var result = a / b; +// } +// catch +// { +// throw; +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch13/Listing 13-12.cs b/9781430248606_sourcecode/Ch13/Listing 13-12.cs new file mode 100644 index 0000000..e551138 --- /dev/null +++ b/9781430248606_sourcecode/Ch13/Listing 13-12.cs @@ -0,0 +1,26 @@ +//using System; + +//namespace Ch13 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// try +// { ExampleOfRethrow(); } + +// catch (Exception exception) +// { Console.WriteLine(exception.StackTrace); } +// } + +// static void ExampleOfRethrow() +// { +// try +// { +// int a = 10, b = 0; +// var result = a / b; +// } +// catch (Exception ex) { throw; } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch13/Listing 13-14.cs b/9781430248606_sourcecode/Ch13/Listing 13-14.cs new file mode 100644 index 0000000..3293366 --- /dev/null +++ b/9781430248606_sourcecode/Ch13/Listing 13-14.cs @@ -0,0 +1,29 @@ +//using System; + +//namespace Ch13 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// try +// { ExampleOfRethrow(); } + +// catch (Exception exception) +// { Console.WriteLine(exception.StackTrace); } +// } + +// static void ExampleOfRethrow() +// { +// try +// { +// int a = 10, b = 0; +// var result = a / b; +// } +// catch (Exception ex) +// { +// throw ex; +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch13/Listing 13-16.cs b/9781430248606_sourcecode/Ch13/Listing 13-16.cs new file mode 100644 index 0000000..2a59050 --- /dev/null +++ b/9781430248606_sourcecode/Ch13/Listing 13-16.cs @@ -0,0 +1,61 @@ +//using System; + +//namespace Ch13 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// try +// { +// Year year = new Year(); +// year.GetMonth(22); +// } +// catch (Exception exception) +// { +// Console.WriteLine("{0}", exception.StackTrace); +// } +// } +// } + +// public class Year +// { +// public string GetMonth(int position) +// { +// try +// { +// MonthNameFinder monthFinder = new MonthNameFinder(); +// return monthFinder.Find(position); +// } +// catch (Exception exception) +// { +// throw; +// } +// } +// } + +// public class MonthNameFinder +// { +// private string[] months = +// { +// "January", "February", +// "March", "April", +// "May", "June", +// "July", "August", +// "September", "October", +// "November", "December" +// }; + +// public string Find(int whichMonth) +// { +// try +// { +// return months[whichMonth]; +// } +// catch (Exception exception) +// { +// throw; +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch13/Listing 13-18.cs b/9781430248606_sourcecode/Ch13/Listing 13-18.cs new file mode 100644 index 0000000..22f765e --- /dev/null +++ b/9781430248606_sourcecode/Ch13/Listing 13-18.cs @@ -0,0 +1,46 @@ +//using System; + +//namespace Ch13 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Division div = new Division(); +// div.Divide(100, 0); +// Console.ReadLine(); +// } + +// public class Division +// { +// public int Divide(int a, int b) +// { +// try +// { +// return a / b; +// } + +// catch (IndexOutOfRangeException indexOutOfRangeException) +// { +// Console.WriteLine("IndexOutOfRangeException"); +// } +// catch (ArgumentException argumentException) +// { +// Console.WriteLine("ArgumentException"); +// } +// catch (DivideByZeroException divideByZeroException) +// { +// Console.WriteLine("{0}\n{1}", +// "DivideByZeroException", +// "This handler block will execute."); +// } +// catch (Exception exception) +// { +// Console.WriteLine("{0}", +// "It will execute when there is no best matched found."); +// } +// return -1; +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch13/Listing 13-19.cs b/9781430248606_sourcecode/Ch13/Listing 13-19.cs new file mode 100644 index 0000000..e8cfbff --- /dev/null +++ b/9781430248606_sourcecode/Ch13/Listing 13-19.cs @@ -0,0 +1,21 @@ +//using System; +//using System.Text; +//using System.IO; + +//namespace Ch13 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// StringBuilder sb = new StringBuilder(); +// sb.Append("StringBuilder\n"); + +// using (StringWriter sw = new StringWriter(sb)) +// { +// sw.WriteLine("StringWriter"); +// } +// Console.WriteLine("{0}", sb.ToString()); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch13/Listing 13-3.cs b/9781430248606_sourcecode/Ch13/Listing 13-3.cs new file mode 100644 index 0000000..08547be --- /dev/null +++ b/9781430248606_sourcecode/Ch13/Listing 13-3.cs @@ -0,0 +1,35 @@ +//using System; + +//namespace Ch13 +//{ +// class MainClass +// { +// static void Main(string[] args) +// { +// ExceptionInMethodStateDescription exInMSD = +// new ExceptionInMethodStateDescription(); +// exInMSD.MethodOne(); +// exInMSD.MethodTwo(); +// exInMSD.MethodThree(); +// } +// } + +// public class ExceptionInMethodStateDescription +// { +// public void MethodOne() +// { +// try { } +// catch (IndexOutOfRangeException indexOutOfRangeException) { } +// } +// public void MethodTwo() +// { +// try { } +// catch (ArgumentException argumentException) { } +// } +// public void MethodThree() +// { +// try { } +// catch (Exception exception) { } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch13/Listing 13-4.cs b/9781430248606_sourcecode/Ch13/Listing 13-4.cs new file mode 100644 index 0000000..392f555 --- /dev/null +++ b/9781430248606_sourcecode/Ch13/Listing 13-4.cs @@ -0,0 +1,33 @@ +///* First version of the Exception handling */ + +//using System; + +//namespace Ch13 +//{ +// class MainClass +// { +// static void Main(string[] args) +// { +// Division div = new Division(); +// div.Divide(100, 0); +// } +// } +// public class Division +// { +// public int Divide(int a, +// int b) +// { +// try +// { +// return a / b; +// } +// /* Exception is handled in here by catching all the exception. */ +// catch (Exception exception) +// { +// Console.WriteLine( +// exception.StackTrace); +// return -1; +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch13/Listing 13-5.cs b/9781430248606_sourcecode/Ch13/Listing 13-5.cs new file mode 100644 index 0000000..a5d1a43 --- /dev/null +++ b/9781430248606_sourcecode/Ch13/Listing 13-5.cs @@ -0,0 +1,51 @@ +//using System; + +//namespace Ch13 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// try +// { +// Salary salary = new Salary(); +// salary.CalculateSalary(10, 0); +// } +// catch (Exception exception) +// { +// Console.WriteLine("An error occured."); +// } +// } +// } + +// public class Salary +// { +// public int CalculateSalary(int week, int rate) +// { +// try +// { +// Calculator calculator = new Calculator(); +// return week * calculator.Divide(week, rate); +// } +// catch (DivideByZeroException divideByZeroException) +// { +// throw; +// } +// } +// } + +// public class Calculator +// { +// public int Divide(int a, int b) +// { +// try +// { +// return a / b; +// } +// catch +// { +// throw; +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch13/Listing 13-6.cs b/9781430248606_sourcecode/Ch13/Listing 13-6.cs new file mode 100644 index 0000000..9e9a70a --- /dev/null +++ b/9781430248606_sourcecode/Ch13/Listing 13-6.cs @@ -0,0 +1,44 @@ +//using System; + +//namespace Ch13 +//{ +// class MainClass +// { +// static void Main(string[] args) +// { +// ExampleOfExceptionUsage eeu = new ExampleOfExceptionUsage(); +// } +// } + +// public class ExampleOfExceptionUsage +// { +// public void DoSomething() +// { +// try +// { +// /* Do some operation */ +// } + +// catch (ArgumentException argumentException) +// { +// /* handle ArgumentException exception */ +// } + +// catch (IndexOutOfRangeException indexOutOfRangeException) +// { +// /*handle IndexOutOfRangeException */ +// } + +// catch (Exception exception) +// { +// /* handle exception in general in here if ArgumentException +// * and IndexOutOfRangeException did not occurred. */ +// } + +// finally +// { +// Console.WriteLine("It will execute all the time"); +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch13/Listing 13-8.cs b/9781430248606_sourcecode/Ch13/Listing 13-8.cs new file mode 100644 index 0000000..b1b9f88 --- /dev/null +++ b/9781430248606_sourcecode/Ch13/Listing 13-8.cs @@ -0,0 +1,13 @@ +//using System; + +//namespace Ch13 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// throw new Exception("An exception object"); +// Console.WriteLine("This will never execute."); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch13/Program.cs b/9781430248606_sourcecode/Ch13/Program.cs new file mode 100644 index 0000000..c3de65b --- /dev/null +++ b/9781430248606_sourcecode/Ch13/Program.cs @@ -0,0 +1,12 @@ +using System; + +namespace Ch13 +{ + class MainClass + { + static void Main(string[] args) + { + /// ExampleOfExceptionUsage eeu = new ExampleOfExceptionUsage(); + } + } +} \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch13/Properties/AssemblyInfo.cs b/9781430248606_sourcecode/Ch13/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..03bd1a6 --- /dev/null +++ b/9781430248606_sourcecode/Ch13/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Ch13")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Ch13")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("338dd4f0-fdba-4ea6-88e4-3072d7e89748")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/9781430248606_sourcecode/Ch13/app.config b/9781430248606_sourcecode/Ch13/app.config new file mode 100644 index 0000000..c5e1dae --- /dev/null +++ b/9781430248606_sourcecode/Ch13/app.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch13/bin/Debug/Ch13.vshost.exe b/9781430248606_sourcecode/Ch13/bin/Debug/Ch13.vshost.exe new file mode 100644 index 0000000000000000000000000000000000000000..718c978565d3e7cd12fb1295cd00a97a02605fca GIT binary patch literal 20880 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 literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch13/bin/Debug/Ch13.vshost.exe.config b/9781430248606_sourcecode/Ch13/bin/Debug/Ch13.vshost.exe.config new file mode 100644 index 0000000..e59af44 --- /dev/null +++ b/9781430248606_sourcecode/Ch13/bin/Debug/Ch13.vshost.exe.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch13/bin/Debug/Ch13.vshost.exe.manifest b/9781430248606_sourcecode/Ch13/bin/Debug/Ch13.vshost.exe.manifest new file mode 100644 index 0000000..061c9ca --- /dev/null +++ b/9781430248606_sourcecode/Ch13/bin/Debug/Ch13.vshost.exe.manifest @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/9781430248606_sourcecode/Ch13/bin/Release/Ch13.exe b/9781430248606_sourcecode/Ch13/bin/Release/Ch13.exe new file mode 100644 index 0000000000000000000000000000000000000000..241d9604fe9ef6fb7d2c33ba22a8134c03df2d28 GIT binary patch literal 5120 zcmeHKU2Ggz6+Sawuh;9w)Gnl{LfgqYEpA$`*FR01)Na<^byBBxY`l&Ot%Wl?dv`tc z{B>s5T^9tQ0;D1#B}fR08pH!Xs`^qzkqAYIP$6ERPrQIsg+3r25K@5$gb-@^&Yf9% z{ZlA!NbOzEckemp-gC}9bLQOZxhF4E8xbY&y!$TE4fNdd68|$?g1GzM*ShI?=Nm_E zD6?-ISz0p#&GX%wuiKiTJB}M_Wuf_XM>8F*IA79iw<59!4y2F9su!k-W|cO2<;}m% zH?6%zs?w#Th|=JorE$@*5-RKlgMA5BS{LDF0=m+vVSOACu7(It0BX z9_OL5J!ZCc7m02I{jEvCoa^kXe+vY}{%phMmtWOA>u-=JjEh%RRR zz&Aii-|`qF@vuWJEf4RrzOY>4NeN(BO{-qJU1RIXB*N-=le)AZSf&sgws?^0(?os=DAUbv!YYu|O?10ncb4 zU&hh*T`19YjIllHJ9}ZKi2fI#f6Mfg<(AQN!*b>9$5iTM;-B}8@TS>1e3bdyfu7^e zuk8RH%$M@W!*uLvlAc7yCg~M=5%{{q-%ET);++cfa}pnySe5u4qy>#v zeuZ=-w?dzbs6)1-z9gwD6d+p^x)D-*T#3K?PkT@jqq{K;yGZH@u?4wW1u`bb+_zbY0z6i|1GW&dmzOIho-SPNE z`hhwINf*AGETXXpJS?$K;)9YuLZ1Tv5y^R6Vu?I(4Ei>3oqh-m=vCln>Bq>VNlIL5 zMjG3ZZ34)7&}<5wYYvfob8e+>iASlhHZ+nI4MEcl-S#XoU!86k!V68;xe(|zfeE@7 z3V-!DEkxB>E}^2iVOCt9?7(n+%PdoAGYExE^W~?75mM1DxwZ(`knof>LQI^~O=sK4 zB4ob%Y@|kz?&G`Asi`HqD5@6JzzLcR0%4b}%_TFm#AJwXs9X=l7P}|{!#AbBdxZtp zshYLAud}B8#I~n9n|lS=X{Bz2dj$p8+w{%a+CHKsU#|#T_t*DXRky;r-{O1}tL$Rk z2~AsMXB-6B^-99uFbxqyXRrCgze;`o{;QPw(Q_-yca6UFLYqbkYLaqyH)^QTuBoY1DxoP# zH-p*^=$YVQDnVdkc6Xvf>77eZO&iV)4HG?} z(9w~Ru}WpMnj5HA%KE^l(2oy{jfv5L5gZ+r6JqS-iP15fC<=89;XuI;R{NFSPaBL4mjJlAmtxsJnQu~aOr{*pRgyZW1R-}{>F ztUv#cn_LUeom!c4-Sw5}h9~^6(8nIHl-#;+hys#83gZG1tng-6-15^ajj`h^c;!M5 zgk)yDN|`7h-wU9YKEq>;M|)fI{;(}sEx7)4L&!=Y>xvNBip6IsZkYFxmY1Us;r}rL zs=UK!xJ4g=dr0C-JH3of{Dt@6ukFL<^}CdSBhy=++~3U;UFHOjTdqL#r${V0m(@}9 z%ee8Z0;h3`mS~3N={)Ee;2Dg${WS6RJCWYz;;26@rP2MWDT!HB#6W>ooqXuwS|p&; zp(?p@%2DF4Y6(&u+yHVN^~r?PiB-Is_zRRO@F~PB6a3mfntmF>+yEjDWD1t5lRzU4&_7HvayUcK2~k}G=$qkZtGziotV$N;>zly=h}K6 z7}e9J?kuESgSkD18>m9FplWh<0Xz0+Q+if|FZ_SYUY<Sz zw%yz>Q}6A=LozlCSnE;+=Yj#N+g`K%?U;)!s!&&E$TY)jjS4(*8yYJ5f$j^S2t*iK|FES(t`%V9WjyF6hY?n zqX*LCdVCAgpuhJ|qwNL4Ro!uD9XtwT{RS|^oEg-T6 zRhqV?Y^EY`0SPyEc*LhpMssu<=I1siJlxMv}ZRox0iyeX+ + + diff --git a/9781430248606_sourcecode/Ch13/bin/Release/Ch13.pdb b/9781430248606_sourcecode/Ch13/bin/Release/Ch13.pdb new file mode 100644 index 0000000000000000000000000000000000000000..fc8cee2e6c178943b0805a38f1cdb9e7c645dd21 GIT binary patch literal 15872 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 literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch13/bin/Release/Ch13.vshost.exe.config b/9781430248606_sourcecode/Ch13/bin/Release/Ch13.vshost.exe.config new file mode 100644 index 0000000..e59af44 --- /dev/null +++ b/9781430248606_sourcecode/Ch13/bin/Release/Ch13.vshost.exe.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch13/bin/Release/Ch13.vshost.exe.manifest b/9781430248606_sourcecode/Ch13/bin/Release/Ch13.vshost.exe.manifest new file mode 100644 index 0000000..061c9ca --- /dev/null +++ b/9781430248606_sourcecode/Ch13/bin/Release/Ch13.vshost.exe.manifest @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/9781430248606_sourcecode/Ch13/obj/x86/Debug/Ch13.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch13/obj/x86/Debug/Ch13.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..5b0b969 --- /dev/null +++ b/9781430248606_sourcecode/Ch13/obj/x86/Debug/Ch13.csproj.FileListAbsolute.txt @@ -0,0 +1,5 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch13\bin\Debug\Ch13.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch13\bin\Debug\Ch13.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch13\bin\Debug\Ch13.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch13\obj\x86\Debug\Ch13.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch13\obj\x86\Debug\Ch13.pdb diff --git a/9781430248606_sourcecode/Ch13/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch13/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..717e6e9098c7ab15acf682474d9010564e6ec854 GIT binary patch literal 6630 zcmeHMdruoj5Vyf>FoYJyfrh`>?hgU6x40#R5>;*N zaOF{_q&=GpBPZ&0;cn(PQpp`A6&LPWCS#=WlS<}1M|+a3xy;j&I;rHgS8=%YmbJ>_ zn7M0}bhf%sU8-g>_ClIw=?I!!{(z-*k2^Nn+jKRPqOmJ!qrs$6q;k`3cv?M#!H=oq zh$gdNE5+&+r?qjanTxYh6VN*++$ygXxWlF`>e}3P@-P)nkyvBvnqv9Y`RLr{LW|BRs8DqPF;1~ zt`GUmDxO^9UmTTmz)z*GOf%0Vv$T+$smX?|sVp%nt)p$KkJM!C3S+z>MHM21UQJ0> z<4Vic`G7b$rWuBC1{7Tk#sw?WS43OF<;P4uznPuqs^QQU8oWBNmuR!yf!k78OerB> z!|b^RpCILWLzrFkT+QpOH{`0OZj=-mBEy74BEvw3qR}XUFVH_nN-d>X9g+@K&C-}g z#*fTpl3T_*2*F`yZ|{~akmozp@z^%y@^CKbTGEocwN$dMEFm3UIo~<+|9j&sEzt#Q zVKK9kooDIgmHpIh^SGl^?MEE;!wu^lR~L;AQnVjg6zrycD8J)574ileBxpZ!Xpo>` zy*T#~+{TB2jKyR4ID!PQKqP(-2>gs9i6a?9G7e;n+y@#V6F}D6#U315Ede@iQpwB! z!J5YVjdB1CQz!GrLh1}v_7LR8X@`6Qdc2=j&2=G;&5ct)wL14=E}fY(OTv>D%L$vA zD@)6n`D}V_et9vyc%XcNg@W8sCTohyZ|3RpqM2tEuLe{Bs4N5UDKaITlK|xwS(QoV z0$?&MY8|oor|8EdkeSOfvcAn(L{gGyBWFC5tR+!k6AGDYp7<%fCaZ77V=b614)VL^DCKe^J%}l@@-;zJp&87{qPEvCqemMKa~Gccl`J~ z2Lp%wGVqSOzoV5Ho_d2<_25+<>ZLSnr0c&z4&aJkS0e|C|G`ENPP#QGko+ABPP6Nm z^}$UXt8E`F8uTOY!(RN5?mxy7g}Xh7oIvD@;GcXCB;55T2B`cw)D$XEi`sxs69}lW-ShJXlM37L TUxVZCzy8@UIR1ii@&5R~NUoNi literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch13/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/9781430248606_sourcecode/Ch13/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch13/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/9781430248606_sourcecode/Ch13/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch13/obj/x86/Release/Ch13.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch13/obj/x86/Release/Ch13.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..923611c --- /dev/null +++ b/9781430248606_sourcecode/Ch13/obj/x86/Release/Ch13.csproj.FileListAbsolute.txt @@ -0,0 +1,6 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch13\bin\Release\Ch13.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch13\bin\Release\Ch13.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch13\bin\Release\Ch13.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch13\obj\x86\Release\ResolveAssemblyReference.cache +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch13\obj\x86\Release\Ch13.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch13\obj\x86\Release\Ch13.pdb diff --git a/9781430248606_sourcecode/Ch13/obj/x86/Release/Ch13.exe b/9781430248606_sourcecode/Ch13/obj/x86/Release/Ch13.exe new file mode 100644 index 0000000000000000000000000000000000000000..241d9604fe9ef6fb7d2c33ba22a8134c03df2d28 GIT binary patch literal 5120 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 + + + Debug + x86 + 8.0.30703 + 2.0 + {C31EF547-CA0A-477F-9A40-0D0347906E6B} + Exe + Properties + Ch14 + Ch14 + v4.5 + + + 512 + + + x86 + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + false + + + x86 + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch14/Listing 14-1.cs b/9781430248606_sourcecode/Ch14/Listing 14-1.cs new file mode 100644 index 0000000..5f69a88 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-1.cs @@ -0,0 +1,29 @@ +//using System; +//using System.Diagnostics; +//using System.Threading; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// Stopwatch stopwatch = new Stopwatch(); +// stopwatch.Start(); +// Method1(); +// Method2(); +// Method3(); +// Method4(); +// Method5(); +// stopwatch.Stop(); +// Console.WriteLine("Elapsed time: {0}ms", +// stopwatch.ElapsedMilliseconds); +// Console.ReadKey(); +// } +// static void Method1() { Thread.Sleep(10); } +// static void Method2() { Thread.Sleep(10); } +// static void Method3() { Thread.Sleep(10); } +// static void Method4() { Thread.Sleep(10); } +// static void Method5() { Thread.Sleep(10); } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-10.cs b/9781430248606_sourcecode/Ch14/Listing 14-10.cs new file mode 100644 index 0000000..f47aed9 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-10.cs @@ -0,0 +1,20 @@ +//using System; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// Task displayTask = Task.Run( +// () => Console.WriteLine("async in C# 5.0")); + +// Console.WriteLine( +// "Task completion status : {0}, waiting to finish....", +// displayTask.IsCompleted); +// displayTask.Wait(); +// Console.ReadLine(); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-11.cs b/9781430248606_sourcecode/Ch14/Listing 14-11.cs new file mode 100644 index 0000000..1e377d8 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-11.cs @@ -0,0 +1,43 @@ +//using System; +//using System.Linq; +//using System.Runtime.CompilerServices; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// ShowEvenNumbers(); +// Console.WriteLine("Waiting....."); +// for (int i = 0; i <= Int16.MaxValue * 100; ++i) ; +// Console.ReadLine(); +// } + +// static void ShowEvenNumbers() +// { +// /* A Task is instantiated*/ +// Task evenNumbersTask = Task.Run( +// () => Enumerable.Range(1, +// new Random().Next(Int16.MaxValue)).Count( +// item => item % 2 == 0)); + +// /* Retrieved the awaiter from the Task instantiated earlier */ +// TaskAwaiter awaiter = evenNumbersTask.GetAwaiter(); + +// /* Setup the continuation block in the awaiter of the Task +// * evenNumbersTask */ +// awaiter.OnCompleted(() => +// { +// /* Continuation code block */ +// Console.WriteLine("Complete, Total no of even : {0}", +// awaiter.GetResult()); +// }); + +// /* Following line or lines is not part of the continuation +// * code block in relation to the Task evenNumbersTask */ +// Console.WriteLine("Schedule to complete..."); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-14.cs b/9781430248606_sourcecode/Ch14/Listing 14-14.cs new file mode 100644 index 0000000..f7740b5 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-14.cs @@ -0,0 +1,33 @@ +//using System; +//using System.Linq; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// ShowEvenNumbers(); +// Console.WriteLine("Waiting....."); +// for (int i = 0; i <= Int16.MaxValue * 100; ++i) ; +// Console.ReadLine(); +// } + +// static void ShowEvenNumbers() +// { +// Task evenNumbersTask = Task.Run( +// () => Enumerable.Range(1, +// new Random().Next(Int16.MaxValue)). +// Count(item => item % 2 == 0)); + +// evenNumbersTask.ContinueWith(task => +// { +// Console.WriteLine("Complete, Total no of even : {0}", +// task.Result); +// }); + +// Console.WriteLine("Schedule to complete..."); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-18.cs b/9781430248606_sourcecode/Ch14/Listing 14-18.cs new file mode 100644 index 0000000..0587cb2 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-18.cs @@ -0,0 +1,84 @@ +//using System; +//using System.Threading; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// /*Instantiates an instance of the State machine */ +// StateMachine sm = new StateMachine(); + +// /*Initialize the State machine with it's default value*/ +// sm.State = 1; + +// /* Start the State machine */ +// sm.MoveNext(); + +// /* Queue the captured execution context with the workitem in the +// * ThreadPool to process later. */ +// ThreadPool.QueueUserWorkItem(state => +// RunLaterOn( +// /* Get the current execution context */ +// CaptureExecutionContext(), +// /* pass the callback code block */ +// new Action(Callback), +// /* The State machine which maintains the state */ +// sm)); + +// /* Do something else. */ +// for (int i = 0; i <= Int16.MaxValue; ++i) +// if (i % byte.MaxValue == 0) +// Console.Write("."); +// Console.ReadLine(); +// } + +// /* This code block capture the current execution context */ +// static ExecutionContext CaptureExecutionContext() +// { +// return ExecutionContext.Capture(); +// } + +// /* This code block will run the callback code block on the +// * captured execution context*/ +// static void RunLaterOn( +// ExecutionContext context, Action callback, object state) +// { +// ExecutionContext.Run(context, +// new ContextCallback(Callback), state); +// } + +// /* This code block used as the callback */ +// static void Callback(object state) +// { +// ((StateMachine)state).MoveNext(); +// } +// } + +// /* The State machine used to maintain the state of the operation */ +// public class StateMachine +// { +// public int State { get; set; } + +// public void MoveNext() +// { +// switch (State) +// { +// case 0: +// Console.Write("State 0"); +// State = 1; +// break; +// case 1: +// Console.Write("State 1"); +// for (int i = 0; i <= byte.MaxValue; ++i) ; +// State = 0; +// break; +// default: +// Console.Write("State -1"); +// State = 10; +// break; +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-20.cs b/9781430248606_sourcecode/Ch14/Listing 14-20.cs new file mode 100644 index 0000000..cdde08e --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-20.cs @@ -0,0 +1,37 @@ +//using System; +//using System.Linq; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// int limit = new Random().Next(Int32.MaxValue); + +// Task evenNumbersTask = Task.Run( +// () => Enumerable.Range(1, limit).Count(item => +// { +// if (item == Int16.MaxValue) +// /* Out of Range will be concat with the original +// * Framework given exception message */ +// throw new ArgumentOutOfRangeException( +// "Out of Range...."); +// return item % 2 == 0; +// })); +// try +// { +// evenNumbersTask.Wait(); /* Wait for the Exception to occur. */ +// } +// catch (AggregateException aggregateException) +// { +// aggregateException +// .InnerExceptions +// .Where(item => item is ArgumentOutOfRangeException) +// .ToList() /* Contains ArgumentOutOfRangeException */ +// .ForEach(age => Console.WriteLine(age.Message)); +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-21.cs b/9781430248606_sourcecode/Ch14/Listing 14-21.cs new file mode 100644 index 0000000..a51f1f8 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-21.cs @@ -0,0 +1,44 @@ +//using System; +//using System.Linq; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// int limit = new Random().Next(Int32.MaxValue); + +// var evenNumbersTask = Task.Factory.StartNew(() => +// { +// var r = Task.Factory.StartNew(() => +// { +// Enumerable.Range(1, limit).Count(item => +// { +// if (item == Int16.MaxValue) +// /* Out of Range will be concat with the original +// * Framework given exception message */ +// throw new ArgumentOutOfRangeException( +// "Out of Range...."); +// return item % 2 == 0; +// }); +// }, TaskCreationOptions.AttachedToParent); +// }, TaskCreationOptions.AttachedToParent); + +// try +// { +// evenNumbersTask.Wait(); /* Wait for the Exception to occur. */ +// } +// catch (AggregateException aggregateException) +// { +// aggregateException +// .Flatten() +// .InnerExceptions +// .Where(item => item is ArgumentOutOfRangeException) +// .ToList() /* Contains ArgumentOutOfRangeException */ +// .ForEach(age => Console.WriteLine(age.Message)); +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-22.cs b/9781430248606_sourcecode/Ch14/Listing 14-22.cs new file mode 100644 index 0000000..4aaec53 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-22.cs @@ -0,0 +1,45 @@ +//using System; +//using System.Linq; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// int limit = new Random().Next(Int32.MaxValue); + +// var evenNumbersTask = Task.Factory.StartNew(() => +// { +// var r = Task.Factory.StartNew(() => +// { +// Enumerable.Range(1, limit).Count(item => +// { +// if (item == Int16.MaxValue) +// /* Out of Range will be concat with the original +// * Framework given exception message */ +// throw new ArgumentOutOfRangeException( +// "Out of Range...."); +// return item % 2 == 0; +// }); +// }); +// r.Wait(); +// }); + +// try +// { +// evenNumbersTask.Wait(); /* Wait for the Exception to occur. */ +// } +// catch (AggregateException aggregateException) +// { +// aggregateException +// .Flatten() +// .InnerExceptions +// .Where(item => item is ArgumentOutOfRangeException) +// .ToList() /* Contains ArgumentOutOfRangeException */ +// .ForEach(age => Console.WriteLine(age.Message)); +// } +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-23.cs b/9781430248606_sourcecode/Ch14/Listing 14-23.cs new file mode 100644 index 0000000..7ac94a8 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-23.cs @@ -0,0 +1,20 @@ +//using System; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// Task showNumber = ShowEvenNumbers(); +// Console.ReadLine(); +// } + +// /* The async modifier used to define the asynchronous method */ +// public static async Task ShowEvenNumbers() +// { +// await Task.Run(() => Console.WriteLine("Async Function")); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-24.cs b/9781430248606_sourcecode/Ch14/Listing 14-24.cs new file mode 100644 index 0000000..0b0e5b0 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-24.cs @@ -0,0 +1,23 @@ +//using System; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// Task showNumber = ShowEvenNumbers(); +// Console.ReadLine(); +// } + +// /* The async modifier used to define the asynchronous method */ +// public static async Task ShowEvenNumbers() +// { +// return await Task.Run(() => +// { +// Console.WriteLine("Async Function"); +// }); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-26.cs b/9781430248606_sourcecode/Ch14/Listing 14-26.cs new file mode 100644 index 0000000..97221b7 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-26.cs @@ -0,0 +1,66 @@ +//using System; +//using System.Linq; +//using System.Threading; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// Console.WriteLine("{0,15}{1,46}{2,15}", +// "Method", "Description", "Thread Id"); +// Console.WriteLine("{0,15}{1,46}{2,15}", +// "Main", "Start Processing.....", +// Thread.CurrentThread.ManagedThreadId); + +// /* Call an async method */ +// Task showNumber = ShowEvenNumbers(); + +// /* The for loop used to simulate as something else is executing +// * while the asynchronous operation is executing it's task.*/ +// for (int i = 0; i < Int64.MaxValue; ++i) +// if (i % Int32.MaxValue == 0) +// Console.WriteLine("{0,15}{1,46}{2,15}", +// "Main", "something else is doing......", +// Thread.CurrentThread.ManagedThreadId); +// /* Checking the Task whether it's completed or not */ +// else if (showNumber.IsCompleted) +// break; + +// Console.WriteLine("{0,15}{1,46}{2,15}", +// "Main", "Finished execution", +// Thread.CurrentThread.ManagedThreadId); +// Console.ReadLine(); +// } + +// public static async Task ShowEvenNumbers() +// { +// Console.WriteLine("{0,15}{1,46}{2,15}", "ShowEvenNumbers", +// "Processing is continuing.....", +// Thread.CurrentThread.ManagedThreadId); +// int limit = new Random().Next(Int32.MaxValue); +// string range = string.Format("({0},{1})", 1, limit); + +// /* Initialize and schedule a Task to run sometime later on.*/ +// Task evenNumbersTask = Task.Run( +// () => Enumerable.Range(1, limit).Count(item => item % 2 == 0)); + +// /* The await statement await the Task to complete later by +// * set up the continuation code block to execute after the +// * Task finishes it's job.*/ +// int count = await evenNumbersTask; + +// /* Following code block will be used as the continuation code +// * block for the evenNumbersTask and it will be setup by +// * the C# compiler. */ +// Console.WriteLine("{0,15}{1,46}{2,15}", "ShowEvenNumbers", +// string.Format("In {0} Total: {1} On Thread", range, count), +// Thread.CurrentThread.ManagedThreadId); +// Console.WriteLine("{0,15}{1,46}{2,15}", "ShowEvenNumbers", +// "Processing is finished.....", +// Thread.CurrentThread.ManagedThreadId); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-3.cs b/9781430248606_sourcecode/Ch14/Listing 14-3.cs new file mode 100644 index 0000000..c8ac53a --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-3.cs @@ -0,0 +1,29 @@ +//using System; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// /* A task will be instantiated and scheduled to run sometime +// * later on and +// * return the instance of the Task to displayTask variable. */ +// Task displayTask = Task.Run(() => +// Console.WriteLine("async in C# 5.0")); + +// /* Continue until the task completes */ +// while (true) +// { +// /* To check whether the task has completed or not */ +// if (displayTask.IsCompleted) +// { +// Console.WriteLine("Task completed!"); +// break; +// } +// } +// Console.ReadLine(); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-32.cs b/9781430248606_sourcecode/Ch14/Listing 14-32.cs new file mode 100644 index 0000000..ed372a6 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-32.cs @@ -0,0 +1,41 @@ +//using System; +//using System.Linq; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// FireAndForget(); + +// for (int i = 0; i < Int32.MaxValue; ++i) +// { +// if (i % (Int16.MaxValue * 999) == 0) +// Console.Write("."); +// } +// Console.ReadLine(); +// } + +// public static async void FireAndForget() +// { +// var evenNumbersTask = Task.Run( +// () => +// { +// Enumerable.Range(1, 5).ToList().ForEach(itemOuter => +// { +// int limit = new Random().Next(Int16.MaxValue * 999); +// var result = Enumerable.Range( +// itemOuter, limit).Count(item => +// { +// return item % 2 == 0; +// }); +// Console.WriteLine( +// "\nProcessing and processed result {0}.", result); +// }); +// }); +// await evenNumbersTask; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-34.cs b/9781430248606_sourcecode/Ch14/Listing 14-34.cs new file mode 100644 index 0000000..e5f1f40 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-34.cs @@ -0,0 +1,37 @@ +//using System; +//using System.Linq; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// MultipleAwait(); + +// for (int i = 0; i < Int16.MaxValue * 8; ++i) +// { +// if (i / byte.MaxValue == 0) +// Console.Write(">"); +// } +// Console.WriteLine("Operation is completed."); +// Console.ReadLine(); +// } +// public static async void MultipleAwait() +// { +// await EvenNumbers(); +// await EvenNumbers(); +// } + +// public static async Task EvenNumbers() +// { +// int limit = new Random().Next(Int16.MaxValue); +// Task evenNumbersTask = Task.Run( +// () => Enumerable.Range(1, limit).Count( +// item => item % 2 == 0)); +// await evenNumbersTask; +// Console.WriteLine("\n" + evenNumbersTask.Result); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-38.cs b/9781430248606_sourcecode/Ch14/Listing 14-38.cs new file mode 100644 index 0000000..e4ac864 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-38.cs @@ -0,0 +1,43 @@ +//using System; +//using System.Linq; +//using System.Threading; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// CancellationTokenSource cancelSource = new CancellationTokenSource(); + +// /* Initialize the Task with the cancel Token from +// * the CancellationTokenSource */ +// Task showNumber = ShowEvenNumbers(cancelSource.Token); + +// /* Following for-loop simulates as something else is going on */ +// for (int i = 0; i < Int64.MaxValue; ++i) +// if (i == byte.MaxValue) +// { +// /* Call the Cancel method to cancel the task in sometime +// * when the Task was executing it's Task*/ +// cancelSource.Cancel(); +// break; +// } +// Console.WriteLine("Cancel"); +// Console.ReadLine(); +// } + +// public static async Task ShowEvenNumbers(CancellationToken cancelToken) +// { +// int limit = new Random().Next(Int32.MaxValue); +// string range = string.Format("({0},{1})", 1, limit); + +// /* Pass the cancel token to the Task */ +// Task evenNumbersTask = Task.Run( +// () => Enumerable.Range(1, limit).Count( +// item => item % 2 == 0), cancelToken); +// int count = await evenNumbersTask; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-4.cs b/9781430248606_sourcecode/Ch14/Listing 14-4.cs new file mode 100644 index 0000000..08c36e6 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-4.cs @@ -0,0 +1,25 @@ +//using System; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// /* An instance of the Task will be instantiated. */ +// Task displayTask = new Task( +// /* The Task will execute the Action block */ +// () => Console.WriteLine("async in C# 5.0"), +// /* Task creation options */ +// TaskCreationOptions.None +// ); + +// displayTask.Start(); +// /* The Task will execute sometimes later */ +// displayTask.Wait(); +// /* Explicitly wait for the task to finish */ +// Console.ReadLine(); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-40.cs b/9781430248606_sourcecode/Ch14/Listing 14-40.cs new file mode 100644 index 0000000..759efeb --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-40.cs @@ -0,0 +1,48 @@ +//using System; +//using System.Linq; +//using System.Threading; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// CancellationTokenSource cancelSource = new +// CancellationTokenSource(); +// Progress progressReport = new Progress((status) => +// { +// Console.Clear(); +// Console.WriteLine(status + " %"); +// }); +// Task showNumber = ShowEvenNumbers(cancelSource.Token, +// progressReport); + +// for (int i = 0; i < Int64.MaxValue; ++i) +// if (i == Int32.MaxValue) +// { +// cancelSource.Cancel(); +// break; +// } +// Console.WriteLine("Cancel"); +// Console.ReadLine(); +// } + +// public static async Task ShowEvenNumbers( +// CancellationToken cancelToken, +// IProgress onProgressChanged) +// { +// int limit = new Random().Next(Int32.MaxValue); +// string range = string.Format("({0},{1})", 1, limit); + +// Task evenNumbersTask = Task.Run( +// () => Enumerable.Range(1, limit).Count(item => +// { +// onProgressChanged.Report((item * 100) / limit); +// return item % 2 == 0; +// }), cancelToken); +// int count = await evenNumbersTask; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-41.cs b/9781430248606_sourcecode/Ch14/Listing 14-41.cs new file mode 100644 index 0000000..2c136d8 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-41.cs @@ -0,0 +1,38 @@ +//using System; +//using System.Linq; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// Task combinedResult = TestWhenAll(); +// while (true) +// { +// if (combinedResult.IsCompleted) +// { +// Console.WriteLine("Finished : {0}", combinedResult.Result); +// break; +// } +// Console.Write("."); +// } +// Console.ReadLine(); +// } + +// public static async Task TestWhenAll() +// { +// int[] combinedResult = +// await Task.WhenAll(CountEvenNumbers(), +// CountEvenNumbers(), CountEvenNumbers()); +// return combinedResult.Sum(); +// } + +// public static async Task CountEvenNumbers() +// { +// return await Task.Run( +// () => Enumerable.Range(1, Int16.MaxValue).Count(x => x % 2 == 0)); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-42.cs b/9781430248606_sourcecode/Ch14/Listing 14-42.cs new file mode 100644 index 0000000..15ef608 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-42.cs @@ -0,0 +1,53 @@ +//using System; +//using System.Linq; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// Task combinedResult = TestWhenAll(); +// while (true) +// { +// if (combinedResult.IsCompleted) +// { +// Console.WriteLine("Finished : {0}", combinedResult.Result); +// break; +// } +// Console.Write("."); +// } +// Console.ReadLine(); +// } + +// public static async Task TestWhenAll() +// { +// int[] combinedResult = +// await Task.WhenAll(CountEvenNumbers(), +// ThrowAnException(), CountEvenNumbers()); +// return combinedResult.Sum(); +// } + +// public static async Task ThrowAnException() +// { +// return await Task.Run(() => +// { +// throw new Exception( +// "There is something wrong in the processing...."); +// return Enumerable.Range(1, Int16.MaxValue).Count( +// x => x % 2 == 0); +// }); +// } +// public static async Task CountEvenNumbers() +// { +// return await Task.Run(() => +// { +// int result = Enumerable.Range(1, Int16.MaxValue).Count( +// x => x % 2 == 0); +// Console.WriteLine(result); +// return result; +// }); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-43.cs b/9781430248606_sourcecode/Ch14/Listing 14-43.cs new file mode 100644 index 0000000..2ab0821 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-43.cs @@ -0,0 +1,38 @@ +//using System; +//using System.Linq; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// Task result = TestWhenAny(); +// while (true) +// { +// if (result.IsCompleted) +// { +// Console.WriteLine("Finished : {0}", result.Result); +// break; +// } +// Console.Write("."); +// } +// Console.ReadLine(); +// } + +// public static async Task TestWhenAny() +// { +// Task firstCompleted = +// await Task.WhenAny(CountEvenNumbers(), +// CountEvenNumbers(), CountEvenNumbers()); +// return firstCompleted.Result; +// } + +// public static async Task CountEvenNumbers() +// { +// return await Task.Run(() => Enumerable.Range(1, +// Int16.MaxValue).Count(x => x % 2 == 0)); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-44.cs b/9781430248606_sourcecode/Ch14/Listing 14-44.cs new file mode 100644 index 0000000..255cc82 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-44.cs @@ -0,0 +1,29 @@ +//using System; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// Task combinedResult = TestDelayWithWhenAny(); + +// while (true) +// { +// if (combinedResult.IsCompleted) +// { +// Console.WriteLine("Finished waiting"); +// break; +// } +// Console.Write("."); +// } +// Console.ReadLine(); +// } + +// public static async Task TestDelayWithWhenAny() +// { +// await Task.WhenAny(Task.Delay(1), Task.Delay(2000)); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-6.cs b/9781430248606_sourcecode/Ch14/Listing 14-6.cs new file mode 100644 index 0000000..30b092a --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-6.cs @@ -0,0 +1,18 @@ +//using System; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// Task displayTask = new Task( +// () => "async in C# 5.0", TaskCreationOptions.None); +// displayTask.Start(); +// Console.WriteLine("Result from the Task : {0}", +// displayTask.Result); +// Console.ReadLine(); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-8.cs b/9781430248606_sourcecode/Ch14/Listing 14-8.cs new file mode 100644 index 0000000..c5f1849 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-8.cs @@ -0,0 +1,28 @@ +//using System; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// Task displayTask = Task.Run(() => +// { +// /* To simulate as doing something.*/ +// for (int i = 0; i <= Int16.MaxValue; ++i) ; +// return "async in C# 5.0"; +// }); +// Console.WriteLine("Result from the Task : {0}", +// displayTask.Result); + +// if (displayTask.IsCompleted) +// Console.Write(TaskStatus.RanToCompletion.ToString()); +// if (displayTask.IsCanceled) +// Console.Write(TaskStatus.Canceled.ToString()); +// if (displayTask.IsFaulted) +// Console.Write(TaskStatus.Faulted.ToString()); +// Console.ReadLine(); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Listing 14-9.cs b/9781430248606_sourcecode/Ch14/Listing 14-9.cs new file mode 100644 index 0000000..ca5066f --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Listing 14-9.cs @@ -0,0 +1,27 @@ +//using System; +//using System.Threading.Tasks; + +//namespace Ch14 +//{ +// class Program +// { +// static void Main() +// { +// Task displayTask = Task.Run(() => +// { +// Task.Delay(500000); +// for (int i = 0; i < byte.MaxValue; ++i) ; +// Console.WriteLine("async in C# 5.0"); +// }); + +// while (true) +// { +// Console.WriteLine(displayTask.Status.ToString()); +// if (displayTask.IsCompleted) +// break; +// } +// Console.WriteLine(displayTask.Status.ToString()); +// Console.ReadLine(); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch14/Program.cs b/9781430248606_sourcecode/Ch14/Program.cs new file mode 100644 index 0000000..76c1853 --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Program.cs @@ -0,0 +1,29 @@ +using System; +using System.Diagnostics; +using System.Threading; + +namespace Ch14 +{ + class Program + { + static void Main() + { + Stopwatch stopwatch = new Stopwatch(); + stopwatch.Start(); + Method1(); + Method2(); + Method3(); + Method4(); + Method5(); + stopwatch.Stop(); + Console.WriteLine("Elapsed time: {0}ms", + stopwatch.ElapsedMilliseconds); + Console.ReadKey(); + } + static void Method1() { Thread.Sleep(10); } + static void Method2() { Thread.Sleep(10); } + static void Method3() { Thread.Sleep(10); } + static void Method4() { Thread.Sleep(10); } + static void Method5() { Thread.Sleep(10); } + } +} diff --git a/9781430248606_sourcecode/Ch14/Properties/AssemblyInfo.cs b/9781430248606_sourcecode/Ch14/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..dea54fc --- /dev/null +++ b/9781430248606_sourcecode/Ch14/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Ch14")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Ch14")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("a1e50cb2-7b98-4fc9-8752-cde13646e8d5")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/9781430248606_sourcecode/Ch14/app.config b/9781430248606_sourcecode/Ch14/app.config new file mode 100644 index 0000000..c5e1dae --- /dev/null +++ b/9781430248606_sourcecode/Ch14/app.config @@ -0,0 +1,3 @@ + + + diff --git a/9781430248606_sourcecode/Ch14/bin/Release/Ch14.exe b/9781430248606_sourcecode/Ch14/bin/Release/Ch14.exe new file mode 100644 index 0000000000000000000000000000000000000000..3512e9ef6020a08d71e164d6b16bbcd51c6e2652 GIT binary patch literal 4608 zcmeHKPi$Pp8UNnKHgQ5M68C$L;}63I*aHt;AE0;pKR$ZRnE&`_Y0Z%= z6hU2B9`Ig}*NPU@;PoUzcjfJ2;f; z2n=2<(lyLgID@kn=L#7Ajx|%V=iH!zwQ3MIX74BJSBq~S9-{|z40Isj>69pM;2sU2 ztGVhbp~=`s89Ig(TQm#&4ZQ?>OXHt4-q84s#{Guk9@jXl@nvJx=%e3hd{a}dYy86a zmvNT9gNZ&GPVGze(E?D}O{^w4x`*zi!^nzSEiuLYEuGSyE$h{<4^AQjO3c7#+)tBq zA05(oRO2y?S&gSPPHUXg__W4nfrk*Cl65q`ps@)&LazabU{%@a*J#pSXweNe8@XFy5+0sfM{2EGF4dp6o}BNW{Z1MxXK%^=p9 z)8s->ja~i(<=3*~CU0uadU+W=>$Fw8kNB3(Ro~0{KY_AnT~M&DsjX+BE058BX-lYl-#Sh&5{$jd~;)) zT;S3cPN=r-Wab0E=G0?h-HPpnmfzedhhVF*9qnY~gRm)_`r1ucC1F*$XLSeD_Awv3 zQ7pQg-gL%3@Q!W*V$QcWawJW3pj=kDHW{4VdE?jU@iH6 zgL>2-1FlegfBeLt1D(^r{_-|sqnYd|(J_ODtSmo~u`8p)rz)o>hR196>EVe}Cq{?u zD$kCc96!k?swZ$c8+2C|cQbx);~M&s(Gzw1qV}pQsg!!)8DWJN0)M7qbA8H7Ya)12 zCU;o7eyjTlWr$W$FIOSHTr3nHIT(HN*#R&A=0ESh(fj5pogb z2bIg^Vh{_P=kcvIbEaW=q041iMOzLkm&=WblVyBaZb`0*W>~EdeFw++V(~_f=&Cw2t(M6XeUY#=?UG3YJ3$QNnx1;ogTkPa%jk4IS zS_Us7qhn(QG6GVYK4np5Go7w%^kct@D$;v>#NZ-t7I|0`s&=B=#Hyhw>MeKxGV@r~ z_3k_(4ymawTLdzwMZ$Gn&?Nur0YA3)pO}K@t3g7=H5Vl5o~hAN mAKBvj6vry zIdkUT``vrb{b?+%7d@}FZs4t{S$VzB947!GYc<`kC(G78|8;2MN~fX=y^rwx!#l7%FF#fb)9K=TrHo}Gy$_myUcM%JaoEzz=a+(ji0?vvDfO21EDV7ck6t`NpYOqE zzH3W#==wk+Iy|HrxyaW|p>R_ouK#E#YDDi>O=EO8nHd^Xvx&&I@Y2LuL*Hs7GXW(_ zw7o6S2XEE%RxIzV>8-#UMpbw#@E&^YjrHam)PV{0X=j#uQ=su_Y4)9vYm|!^?QA@_ zA$H02vGX7A^A(}lXOJND-9l!3d)MLJ0~koGe#wX%+VVozV^2|fXK)ePQTmgwtd zTe2va{O|b!%92$42=F|SY2| zRuOIy0`@HeH8;1kbcCZVY+Q0C@I;I?A%zd5n}1%@;Cgj0jV#6~2<;LQdw(%<3%lYV z689x`(I~&r;u#mZ)^^H8YRx%?V;BKyl8NGvE@-U;9&?^XVj!LNe~Ir_)9XKS@33Im#1s-KCxq#7XKqUd3V7TiPn~ z6Y8#4Qkm*vb-9{O+lwiZA!BHA5Iyw z0v(<*^bY`Idw{LW|BRs8DqPF;1~ zt`FJGDxO^9UmT@7;HOkqrkQ7gT8axs<#fYVM3g8I*6|Ke$8x%Mg)!L>yb2LQuVw_T zF{woBd_Wu=Qxrou2Z}BRFe;4PG7COSJj!z#YLYDkT@M zVfIXcPmprGA=EBsAO%K6U8{_l;myi69Y z#ijIWCQDN*s|U&3=5a@-I*2$Ngd5g7t}YrKrsyEDDA-MdP=3dAD&!3`Owd8(&@e&6 zdT|~gxQ&kjnTW^maSRDyfk^xw5cnBK5=SzDWD>}Pb{}X&n*y@YF81KiS_#l`lL%@C z2-Y;-Z>oPoK7*%Gu&+IUhY4V%j7%z% zUX6baeVcQbOOVGT3s7%{ zsy@K3g8CMofCYCD7V<<914)Uh^DCKe^XZ_x@@-;zJp&7SgYXKK>!5sp5Xyh4JAQng zgMp(#8Fx(()C{)wT~74F-|-VK08j_mcgC@$vYVaO(A20x=)fAGH@iwnIH}69^@J-7n!GR)Cse z6k(;0H7`ygia7HcH-W$tTLQr+>e9Xf@~EA=v548xz6R+``wepyR`Uu1YNoJhI@&kD zpKF(IuF$nQ+P5J8p}oi4?R!M2frPu>ngJ?*4mE`e#3DA}(*y!)Z1?=U!KA`A U`q%LI`>%gC43EE{TzoM3FJ}vup#T5? literal 0 HcmV?d00001 diff --git a/9781430248606_sourcecode/Ch14/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/9781430248606_sourcecode/Ch14/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch14/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/9781430248606_sourcecode/Ch14/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/9781430248606_sourcecode/Ch14/obj/x86/Release/Ch14.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch14/obj/x86/Release/Ch14.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..3efc6ce --- /dev/null +++ b/9781430248606_sourcecode/Ch14/obj/x86/Release/Ch14.csproj.FileListAbsolute.txt @@ -0,0 +1,5 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch14\bin\Release\Ch14.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch14\bin\Release\Ch14.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch14\obj\x86\Release\ResolveAssemblyReference.cache +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch14\obj\x86\Release\Ch14.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch14\obj\x86\Release\Ch14.pdb diff --git a/9781430248606_sourcecode/Ch14/obj/x86/Release/Ch14.exe b/9781430248606_sourcecode/Ch14/obj/x86/Release/Ch14.exe new file mode 100644 index 0000000000000000000000000000000000000000..3512e9ef6020a08d71e164d6b16bbcd51c6e2652 GIT binary patch literal 4608 zcmeHKPi$Pp8UNnKHgQ5M68C$L;}63I*aHt;AE0;pKR$ZRnE&`_Y0Z%= z6hU2B9`Ig}*NPU@;PoUzcjfJ2;f; z2n=2<(lyLgID@kn=L#7Ajx|%V=iH!zwQ3MIX74BJSBq~S9-{|z40Isj>69pM;2sU2 ztGVhbp~=`s89Ig(TQm#&4ZQ?>OXHt4-q84s#{Guk9@jXl@nvJx=%e3hd{a}dYy86a zmvNT9gNZ&GPVGze(E?D}O{^w4x`*zi!^nzSEiuLYEuGSyE$h{<4^AQjO3c7#+)tBq zA05(oRO2y?S&gSPPHUXg__W4nfrk*Cl65q`ps@)&LazabU{%@a*J#pSXweNe8@XFy5+0sfM{2EGF4dp6o}BNW{Z1MxXK%^=p9 z)8s->ja~i(<=3*~CU0uadU+W=>$Fw8kNB3(Ro~0{KY_AnT~M&DsjX+BE058BX-lYl-#Sh&5{$jd~;)) zT;S3cPN=r-Wab0E=G0?h-HPpnmfzedhhVF*9qnY~gRm)_`r1ucC1F*$XLSeD_Awv3 zQ7pQg-gL%3@Q!W*V$QcWawJW3pj=kDHW{4VdE?jU@iH6 zgL>2-1FlegfBeLt1D(^r{_-|sqnYd|(J_ODtSmo~u`8p)rz)o>hR196>EVe}Cq{?u zD$kCc96!k?swZ$c8+2C|cQbx);~M&s(Gzw1qV}pQsg!!)8DWJN0)M7qbA8H7Ya)12 zCU;o7eyjTlWr$W$FIOSHTr3nHIT(HN*#R&A=0ESh(fj5pogb z2bIg^Vh{_P=kcvIbEaW=q041iMOzLkm&=WblVyBaZb`0*W>~EdeFw++V(~_f=&Cw2t(M6XeUY#=?UG3YJ3$QNnx1;ogTkPa%jk4IS zS_Us7qhn(QG6GVYK4np5Go7w%^kct@D$;v>#NZ-t7I|0`s&=B=#Hyhw>MeKxGV@r~ z_3k_(4ymawTLdzwMZ$Gn&?Nur0YA3)pO}K@t3g7=H5Vl5o~hAN mAKBvj6vry zIdkUT``vrb{b?+%7d@}FZs4t{S$VzB947!GYc<`kC(G78|8;2MN~fX=y^rwx!#l7%FF#fb)9K=TrHo}Gy$_myUcM%JaoEzz=a+(ji0?vvDfO21EDV7ck6t`NpYOqE zzH3W#==wk+Iy|HrxyaW|p>R_ouK#E#YDDi>O=EO8nHd^Xvx&&I@Y2LuL*Hs7GXW(_ zw7o6S2XEE%RxIzV>8-#UMpbw#@E&^YjrHam)PV{0X=j#uQ=su_Y4)9vYm|!^?QA@_ zA$H02vGX7A^A(}lXOJND-9l!3d)MLJ0~koGe#wX%+VVozV^2|fXK)ePQTmgwtd zTe2va{O|b!%92$42=F|SY2| zRuOIy0`@HeH8;1kbcCZVY+Q0C@I;I?A%zd5n}1%@;Cgj0jV#6~2<;LQdw(%<3%lYV z689x`(I~&r;u#mZ)^^H8YRx%?V;BKyl8NGvE@-U;9&?^X@R`OZSatyHHxTU*$ zHq_#?^b=J5i0#Y)=SLj3mB8{JEMi!8cIS0-JHOpXG!lvYjg5Y(-5o?0;ni*K!kojrGA}a?{h2hX7An5$ZcEmH6Cvw;R*{vE zcmD!!TexNP_X!OanXG~imlgby0{sq!s29BI2?<%KFbu_xr!?AkW?fhC_t#JAitA2& zz^@kZ_@nXjt4tUDRQi&cSuVlRLUK^|nq|#o0hn}Zdra5VbW@57285iLl~CnM%k~*R zj(%vMh|S}=^S+-GI(LcnR(QM)^4ZnHS+1HcYm>su3wwFB&|SDEg#$_n`5KMo8ePB) z>n(wD-uEsKfhmU1$kCKE)*J9Za>v@m z2)s`p99%O6vwEMoKI}0r-!Fz!3tDoonlu~A5z^(Qv-f2AKfflct8B$td6iyYT87lx z`eE`qJ8r3|!-&J-V8eRL#YLl|6dgtug>Ta^gx~U<8t@B5NFhFsWGWt`?gSCsX(RDF zNN9MH{=|t)Au*oni1HX8-R8YfJG9pVAodY3DPWj1+?8)&j$qkHu@ z*XkHED5w6@hP@?3-OjZTBk0WY#Z-FHE(l*bkP&4Fn7I~fG_kVVnOb_;7Nrk%YweYt z2N#$EI|~X6a}lda9+Ys8L!^+03P|v<3Rw}am z;q<38-3%Qvm(4EI?9DY2I4MS}jalrCqjkm?*qNdsYbmvqUXS0${|SmXh2HoQNz5v{ zu0dcZWD%SrZ=^Iv+vKRW52O5!YWtwh9EVh7 zj3Yd8HPpnB;=jY>(Q)_0kDR|^;l}v!;c0X-qPvby9^!_P_qQB&9vn_i#-CzB^;?2K zBHjKNCX(GjZomnGo`L9R*okf9g-w+3P=HM@*g&w9S|Wg^*fE|Xd3c(+@~)_3yg=^k z>5tsgbZN3J@oEa+j*js)j?bSKuf7>+cZ_e4KM0`vEy|fW&9f6ia&&XjF}}m0AO1h~ yEpaczy$OP|LA+jK=U|YJ;u2s?5O}3_CwL5`liK*7qs`>sE>1_ANq8A{IQ + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch15/Ch15.csproj b/9781430248606_sourcecode/Ch15/Ch15.csproj new file mode 100644 index 0000000..5e09994 --- /dev/null +++ b/9781430248606_sourcecode/Ch15/Ch15.csproj @@ -0,0 +1,62 @@ + + + + + Debug + AnyCPU + {36B857F9-F732-40C5-A582-95FEB9F485B0} + Exe + Properties + Ch15 + Ch15 + v4.5 + 512 + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch15/Listing 15-1.cs b/9781430248606_sourcecode/Ch15/Listing 15-1.cs new file mode 100644 index 0000000..af4c893 --- /dev/null +++ b/9781430248606_sourcecode/Ch15/Listing 15-1.cs @@ -0,0 +1,25 @@ +//using System; + +//namespace Ch15 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// Person aPerson = new Person() +// { +// Name = "A" +// }; +// aPerson.ShowDetails(); +// } +// } + +// public class Person +// { +// public string Name { get; set; } +// public void ShowDetails() +// { +// Console.WriteLine(Name); +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch15/Listing 15-2.cs b/9781430248606_sourcecode/Ch15/Listing 15-2.cs new file mode 100644 index 0000000..b9cb327 --- /dev/null +++ b/9781430248606_sourcecode/Ch15/Listing 15-2.cs @@ -0,0 +1,20 @@ +//using System; + +//namespace Ch15 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// try +// { +// int a = 100, b = 0; +// Console.WriteLine(a / b); +// } +// catch (DivideByZeroException dbze) +// { +// Console.WriteLine(dbze.Message); +// } +// } +// } +//} \ No newline at end of file diff --git a/9781430248606_sourcecode/Ch15/Listing 15-3.cs b/9781430248606_sourcecode/Ch15/Listing 15-3.cs new file mode 100644 index 0000000..0e3ccab --- /dev/null +++ b/9781430248606_sourcecode/Ch15/Listing 15-3.cs @@ -0,0 +1,17 @@ +//namespace Ch15 +//{ +// class Program +// { +// static void Main(string[] args) { } +// } + +// public class Universe +// { +// static double ageOfTheUniverse; +// public Universe() { } /* Compiled as .ctor */ +// public Universe(double age) { } /* Compiled as .ctor */ +// static Universe() +// { ageOfTheUniverse = 13.75e+10; } /* Compiled as .cctor */ +// public void EmtpyMethod() { } /* Method declaration */ +// } +//} diff --git a/9781430248606_sourcecode/Ch15/Listing 15-5.cs b/9781430248606_sourcecode/Ch15/Listing 15-5.cs new file mode 100644 index 0000000..7e5fb32 --- /dev/null +++ b/9781430248606_sourcecode/Ch15/Listing 15-5.cs @@ -0,0 +1,13 @@ +//using System; +//namespace Ch15 +//{ +// class Program +// { +// static void Main(string[] args) +// { +// double result = default(double); +// for (int i = 0; i < Int16.MaxValue; ++i) +// result += i; +// } +// } +//} diff --git a/9781430248606_sourcecode/Ch15/Program.cs b/9781430248606_sourcecode/Ch15/Program.cs new file mode 100644 index 0000000..6e21dce --- /dev/null +++ b/9781430248606_sourcecode/Ch15/Program.cs @@ -0,0 +1,25 @@ +using System; + +namespace Ch15 +{ + class Program + { + static void Main(string[] args) + { + Person aPerson = new Person() + { + Name = "A" + }; + aPerson.ShowDetails(); + } + } + + public class Person + { + public string Name { get; set; } + public void ShowDetails() + { + Console.WriteLine(Name); + } + } +} diff --git a/9781430248606_sourcecode/Ch15/Properties/AssemblyInfo.cs b/9781430248606_sourcecode/Ch15/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..b8fa8b0 --- /dev/null +++ b/9781430248606_sourcecode/Ch15/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Ch15")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Ch15")] +[assembly: AssemblyCopyright("Copyright © 2012")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("9a4261f2-c344-4024-8157-31a6f7280012")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/9781430248606_sourcecode/Ch15/obj/Debug/Ch15.csproj.FileListAbsolute.txt b/9781430248606_sourcecode/Ch15/obj/Debug/Ch15.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..448f816 --- /dev/null +++ b/9781430248606_sourcecode/Ch15/obj/Debug/Ch15.csproj.FileListAbsolute.txt @@ -0,0 +1,5 @@ +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch15\bin\Debug\Ch15.exe.config +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch15\bin\Debug\Ch15.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch15\bin\Debug\Ch15.pdb +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch15\obj\Debug\Ch15.exe +J:\Book\ExpertC#2012\SourceCode\BookExamples\Ch15\obj\Debug\Ch15.pdb diff --git a/9781430248606_sourcecode/Ch15/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/9781430248606_sourcecode/Ch15/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..1e1558acbee56f9710148ea311fa9d36a7151ca1 GIT binary patch literal 6627 zcmeHMdruoj5VwQ5UYi+jc}Y|P8#go|LbeO7I0Wmvwb^pMb$0hK zuI10tPf+zEwlin@c!pNWS>g|`@w*Qr=&caaU;j;b?$EEH@hT3p-q2Q= zpHO$LlFC%G)un1WZD&&?Lq^f$@&_z!c+9cU-j=JV;Eg>&8VxFpA`x3|!&CAR41Pi! zhc~IcE+ws3oYv-5Iyw z0v(<*^bY`Idw{LW|BRs8DqPF;1~ zu8-KwDxO~BUmT@7;HOkqrkQ7gT8axsFe;4PG7COSHM}z#YLYDkT@| zFngxJCrG*85Na1aSFt+n4Y{hR8zrgT(?&Ec5*Yz{FB*+%@CEwkXsIO?twYkms#yxt z$oPr6R4~hU3n4g4@9*Ez1@e5CI3C?0OdQPzT}w(Zx0clF(&EBlmGhmm@V__C(h|v9 z*~RoqW`U-bR}PZ5&Et+vbr5kl2sf;ETwOFeOwmDPQLvi^q5O{LRLC1>n4p8mp<#lC z_2N80a2p>1G9HiN<0ulq0+INAAn-GWB#vYp$pnyb?E%n;HVI^-UF^Z3)e@lNCK1#O z5Ugpu+bjpbFnPLQWRrbV*+Y<H=6Y zEMgtg_^0T@6p-1=)9eFzoUWDt`83M)zz-ey)4-4UJwC&yx@3;_5T3??mohS`OnN2$ zIsBc#*y2~4L1HwSTemgD>M_H19PP3HM9*l#4?p&K0_63_g=4+ZFf1SKYqOw@x)1ctAQ*aYJpcw@Shv8}%PVN2!{^5{iZ&= zhGVJigB628HSA z=>yG+lZYb7yv9u+>co~nFmI^BNFT!p2)f`Ec4Y?_YtE%0aC z<(tcMt&a8`$bW3_F?Ty3K+~HbZ2)fdQvQuJVSvq>GPz`=I@&AH5e6Xs9`sDMi=>HQ z4NHI>EeWiT1cepm_Aqh+p)VqT?FS&?uD51@%3nfFp#rgp4fr&HfEwF