Microsoft Learning:

Exam 70-558:

UPGRADE: MCAD Skills to MCTS Windows Applications by Using the Microsoft .NET Framework

Published:May 30, 2008
Language(s):English
Audience(s):Developers
Technology:Microsoft Visual Studio 2005
Type:Proctored Exam
About this ExamCandidates for this exam work on a team in a medium-sized or large development environment that uses Microsoft Visual Studio 2005. Candidates should have a minimum of one year of experience developing Microsoft Windows–based applications by using the Microsoft .NET Framework.
Audience Profile
Candidates for this exam work on a team in a medium-sized or large development environment that uses Microsoft Visual Studio 2005. Candidates should have a minimum of one year of experience developing Microsoft Windows–based applications by using the Microsoft .NET Framework. Candidates should have a working knowledge of Visual Studio 2005.
Credit Toward CertificationWhen you pass Exam 70-558: UPGRADE: MCAD Skills to MCTS Windows Applications by Using the Microsoft .NET Framework, you complete the requirements for the following certification(s):
Note This preparation guide is subject to change at any time without prior notice and at the sole discretion of Microsoft. Microsoft exams might include adaptive testing technology and simulation items. Microsoft does not identify the format in which exams are presented. Please use this preparation guide to prepare for the exam, regardless of its format.
Skills Being MeasuredThis exam measures your ability to accomplish the technical tasks listed below.The percentages indicate the relative weight of each major topic area on the exam.
Developing applications that use system types and collections
  • Manage data in a .NET Framework application by using .NET Framework 2.0 system types. (Refer System namespace)

    May include but is not limited to: Value types; Reference types; Attributes; Generic types; Exception classes; Boxing and UnBoxing; TypeForwardedToAttributes class
  • Manage a group of associated data in a .NET Framework application by using collections. (Refer System.Collections namespace)

    May include but is not limited to: ArrayList class; Collection interfaces; Iterators; Hashtable class; CollectionBase class and ReadOnlyCollectionBase class; DictionaryBase class and DictionaryEntry class; Comparer class; Queue class; SortedList class; BitArray class; Stack class
  • Improve type safety and application performance in a .NET Framework application by using generic collections. (Refer System.Collections.Generic namespace)

    May include but is not limited to: Collection.Generic interfaces; Generic Dictionary; Generic Comparer class and Generic EqualityComparer class; Generic KeyValuePair structure; Generic List class, Generic List.Enumerator structure, and Generic SortedList class; Generic Queue class and Generic Queue.Enumerator structure; Generic SortedDictionary class; Generic LinkedList; Generic Stack class and Generic Stack.Enumerator structure
  • Implement .NET Framework interfaces to cause components to comply with standard contracts. (Refer System namespace)

    May include but is not limited to: IComparable interface; IDisposable interface; IConvertible interface; ICloneable interface; INullableValue interface; IEquatable interface; IFormattable interface
Embedding configuration, diagnostic, management, and installation features into a .NET Framework application
  • Embed configuration management functionality into a .NET Framework application. (Refer System.Configuration namespace)

    May include but is not limited to: Configuration class and ConfigurationManager class; ConfigurationSettings class, ConfigurationElement class, ConfigurationElementCollection class, and ConfigurationElementProperty class; Implement IConfigurationSectionHandler interface; ConfigurationSection class, ConfigurationSectionCollection class, ConfigurationSectionGroup class, and ConfigurationSectionGroupCollection class; Implement ISettingsProviderService interface; Implement IApplicationSettingsProvider interface; ConfigurationValidationBase class; Implement IConfigurationSystem interface
  • Debug and trace a .NET Framework application by using the System.Diagnostics namespace.

    May include but is not limited to: Debug class and Debugger class; Trace class, CorrelationManager class, TraceListener class, TraceSource class, TraceSwitch class, XmlWriterTraceListener class, DelimitedListTraceListener class, and EventlogTraceListener class; Debugger attributes
Implementing serialization and input/output functionality in a .NET Framework application
  • Serialize or deserialize an object or an object graph by using runtime serialization techniques. (Refer System.Runtime.Serialization namespace)

    May include but is not limited to: Serialization interfaces; Serilization attributes; SerializationEntry structure and SerializationInfo class; ObjectManager class; Formatter class, FormatterConverter class, and FormatterServices class; StreamingContext structure
  • Control the serialization of an object into XML format by using the System.Xml.Serialization namespace.

    May include but is not limited to: Serialize and deserialize objects into XML format by using the XmlSerializer class; Control serialization by using serialization attributes; Implement XML Serialization interfaces to provide custom formatting for XML serialization; Delegates and event handlers provided by the System.Xml.Serialization namespace
  • Access files and folders by using the File System classes. (Refer System.IO namespace)

    May include but is not limited to: File class and FileInfo class; Directory class and DirectoryInfo class; DriveInfo class and DriveType enumeration; FileSystemInfo class and FileSystemWatcher class; Path class; ErrorEventArgs class and ErrorEventHandler delegate; RenamedEventArgs class and RenamedEventHandler delegate
  • Compress or decompress stream information in a .NET Framework application (refer System.IO.Compression namespace), and improve the security of application data by using isolated storage. (Refer System.IO.IsolatedStorage namespace)

    May include but is not limited to: IsolatedStorageFile class; IsolatedStorageFileStream class; DeflateStream class; GZipStream class
Improving the security of .NET Framework applications by using the .NET Framework 2.0 security features
  • Implement access control by using the System.Security.AccessControl classes.

    May include but is not limited to: DirectorySecurity class, FileSecurity class, FileSystemSecurity class, and RegistrySecurity class; AccessRule class; AuthorizationRule class and AuthorizationRuleCollection class; CommonAce class, CommonAcl class, CompoundAce class, GeneralAce class, and GeneralAcl class; AuditRule class; MutexSecurity class, ObjectSecurity class, and SemaphoreSecurity class
  • Implement a custom authentication scheme by using the System.Security.Authentication classes. (Refer System.Security.Authentication namespace)

    May include but is not limited to: Authentication algorithms and SSL protocols
  • Encrypt, decrypt, and hash data by using the System.Security.Cryptography classes. (Refer System.Security.Cryptography namespace)

    May include but is not limited to: DES class and DESCryptoServiceProvider class; HashAlgorithm class; DSA class and DSACryptoServiceProvider class; SHA1 class and SHA1CryptoServiceProvider class; TripleDES and TripleDESCryptoServiceProvider class; MD5 class and MD5CryptoServiceProvider class; RSA class and RSACryptoServiceProvider class; RandomNumberGenerator class; CryptoStream class; CryptoConfig class; RC2 class and RC2CryptoServiceProvider class; AsymmetricAlgorithm class; ProtectedData class and ProtectedMemory class; RijndaelManaged class and RijndaelManagedTransform class; CspParameters class; CryptoAPITransform class; Hash-based Message Authentication Code (HMAC)
  • Control permissions for resources by using the System.Security.Permission classes. (Refer System.Security.Permission namespace)

    May include but is not limited to: SecurityPermission class; PrincipalPermission class; FileIOPermission class; StrongNameIdentityPermission class; UIPermission class; UrlIdentityPermission class; PublisherIdentityPermission class; GacIdentityPermission class; FileDialogPermission class; DataProtectionPermission class; EnvironmentPermission class; IUnrestrictedPermission interface; RegistryPermission class; IsolatedStorageFilePermission class; KeyContainerPermission class; ReflectionPermission class; StorePermission class; SiteIdentityPermission class
  • Control code privileges by using System.Security.Policy classes (Refer System.Security.Policy namespace)

    May include but is not limited to: ApplicationSecurityInfo class and ApplicationSecurityManager class; ApplicationTrust class and ApplicationTrustCollection class; Evidence class and PermissionRequestEvidence class; CodeGroup class, FileCodeGroup class, FirstMatchCodeGroup class, NetCodeGroup class, and UnionCodeGroup class; Condition classes; PolicyLevel class and PolicyStatement class; IApplicationTrustManager interface, IMembershipCondition interface, and IIdentityPermissionFactory interface
  • Access and modify identity information by using the System.Security.Principal classes. (Refer System.Security.Principal namespace)

    May include but is not limited to: GenericIdentity class and GenericPrincipal class; WindowsIdentity class and WindowsPrincipal class; NTAccount class and SecurityIdentifier class; IIdentity interface and IPrincipal interface; WindowsImpersonationContext class; IdentityReference class and IdentityReferenceCollection class
Implementing interoperability, reflection, and mailing functionality in a .NET Framework application
  • Send electronic mail to a Simple Mail Transfer Protocol (SMTP) server for delivery from a .NET Framework application. (Refer System.Net.Mail namespace)
    May include but is not limited to: MailMessage class; MailAddress class and MailAddressCollection class; SmtpClient class, SmtpPermission class, and SmtpPermissionAttribute class; Attachment class, AttachmentBase class, and AttachmentCollection class; SmtpException class, SmtpFailedRecipientException class, and SmtpFailedRecipientsException class; SendCompletedEventHandler delegate; LinkedResource class and LinkedResourceCollection class; AlternateView class and AlternateViewCollection class
Implementing globalization, drawing, and text manipulation functionality in a .NET Framework application
  •  Enhance the user interface of a .NET Framework application by using the System.Drawing namespace.
    May include but is not limited to: using brushes, pens, colors, and fonts; using graphics, images, bitmaps, and icons; using shapes and sizes
Creating a UI for a Windows Forms Application by Using Standard Controls
  • Manage control layout on a Windows Form.

    May include but is not limited to: Group and arrange controls by using the Panel control, GroupBox control, TabControl control, FlowLayoutPanel control, and TableLayoutPanel control; Use the SplitContainer control to create dynamic container areas
  • Add and configure a Windows Forms control.

    May include but is not limited to: Use the integrated development environment (IDE) to add a control to a Windows Form or other container control of a project at design time; Add controls to a Windows Form at run time; Configure controls on a Windows Form at design time to optimize the UI; Modify control properties; Configure controls on a Windows Form at run time to ensure that the UI complies with best practices; Create and configure command controls on a Windows Form; Create and configure text edit controls on a Windows Form; Create and configure text display controls on a Windows Form; Use the LinkLabel control to add Web-style links to Windows Forms applications; Provide a list of options on a Windows Form by using a ListBox control, a ComboBox control, or a CheckedListBox control; Configure the layout and functionality of a Windows Form to display a list of items; Implement value-setting controls on a Windows Form; Configure a WebBrowser control; Add and configure date-setting controls on a Windows Form; Display images by using Windows Forms controls; Configure the NotifyIcon component; Create access keys for Windows Forms controls
  • Create and configure menus.

    May include but is not limited to: Create and configure a MenuStrip component on a Windows Form; Change the displayed menu structure programmatically; Create and configure the ContextMenuStrip component on a Windows Form
Integrating Data in a Windows Forms Application
  • Implement data-bound controls.

    May include but is not limited to: Use the DataGridView control to display and update the tabular data contained in a data source; Use a simple data-bound control to display a single data element on a Windows Form; Implement complex data binding to integrate data from multiple sources; Navigate forward and backward through records in a DataSet in Windows Forms; Define a data source by using a DataConnector component; Create data forms by using the Data Form Wizard
  • Manage connections and transactions.

    May include but is not limited to: Configure a connection to a database by using the Connection Wizard; Configure a connection to a database by using Server Explorer; Configure a connection to a database by using the Connection class; Connect to a database by using specific database Connection objects; Enumerate through instances of Microsoft SQL Server; Open an ADO.NET connection to a database; Close an ADO.NET connection to a database by using the Close method of the Connection object; Protect access to data source connection details; Create a connection designed for reuse in a connection pool; Control a connection pool by configuring ConnectionString values based on database type; Use the Connection events to detect database information; Handle exceptions when connecting to a database; Perform transactions by using the Transaction object
  • Read, write, and validate XML by using the XmlReader class and the XmlWriter class.

    May include but is not limited to: Read XML data by using the XmlReader class; Read all XML element and attribute content; Read specific element and attribute content; Read XML data by using the XmlTextReader class; Read node trees by using the XmlNodeReader class; Validate XML data by using the XmlValidatingReader class; Write XML data by using the XmlWriter class
Enhancing Usability
  • Create, configure, and customize user assistance controls and components.
    May include but is not limited to: Configure the PropertyGrid component; Configure the ProgressBar control to indicate progress graphically; Display status information by using the StatusStrip control; Configure the ToolTip component; Configure the ErrorProvider component; Configure the HelpProvider component; Play system sounds and audio files by using the SoundPlayer; Configure the Timer component to raise an event at regular intervals; Enable scrolling by using the HScrollBar and VScrollBar controls
Implementing Asynchronous Programming Techniques to Improve the User Experience
  • Manage a background process by using the BackgroundWorker component.
    May include but is not limited to: Run a background process by using the BackgroundWorker component; Announce the completion of a background process by using the BackgroundWorker component; Cancel a background process by using the BackgroundWorker component; Report the progress of a background process by using the BackgroundWorker component; Request the status of a background process by using the BackgroundWorker component
Configuring and Deploying Applications
  • Configure the installation of a Windows Forms application by using ClickOnce technology.

    May include but is not limited to: Install a Windows Forms application on a client computer by using ClickOnce deployment; Install a Windows Forms application from a server by using ClickOnce deployment; Configure the required permissions of an application by using ClickOnce deployment.
Preparation Tools and ResourcesTo help you prepare for this exam, Microsoft Learning recommends that you have hands-on experience with the product and that you use the following training resources. These training resources do not necessarily cover all of the topics listed in the "Skills Measured" tab.
Classroom Training There is no classroom training currently available.
Microsoft E-Learning
Microsoft Press Books There are no Microsoft Press books currently available.
Practice Tests
Microsoft Online Resources
  • Microsoft Visual Studio 2005: Visit the Visual Studio 2005 Web site for detailed product information.
  • Microsoft Learning Community: Join newsgroups and visit community forums to connect with your peers for suggestions on training resources and advice on your certification path and studies.
  • TechNet: Designed for IT professionals, this site includes how-to instructions, best practices, downloads, technical resources, newsgroups, and chats.
  • MSDN: Designed for developers, the Microsoft Developer Network (MSDN) features code samples, technical articles, downloads, newsgroups, and chats.
Have Questions? For advice about training and certification, connect with peers: For questions about a specific certification, chat with a Microsoft Certified Professional (MCP): To find out about recommended blogs, Web sites, and upcoming Live Meetings on popular topics, visit our community site: