| |
| |
Introduction | |
| |
| |
| |
An Introduction to Visual Studio 2010 | |
| |
| |
| |
A Quick Tour of Visual Studio 2010 | |
| |
| |
The Visual Studio Product Line | |
| |
| |
Express Editions | |
| |
| |
Professional Edition | |
| |
| |
Premium | |
| |
| |
Ultimate | |
| |
| |
MSDN | |
| |
| |
Related Tools | |
| |
| |
Languages, Frameworks, and Application Templates | |
| |
| |
Programming Language Choices | |
| |
| |
The .NET Framework(s) | |
| |
| |
The Many Faces of a .NET Application | |
| |
| |
Developing Rich(er) Clients | |
| |
| |
Windows (WinForms) | |
| |
| |
Windows Presentation Foundation (WPF) | |
| |
| |
Office-Based Solutions | |
| |
| |
Creating Web Clients | |
| |
| |
Building Websites with ASP.NET | |
| |
| |
Adding Richer Features with AJAX | |
| |
| |
Developing for Silverlight | |
| |
| |
Making the Client Choice | |
| |
| |
Coding for the Cloud | |
| |
| |
Creating a Cloud Application | |
| |
| |
Running a Cloud Application | |
| |
| |
Publishing to the Cloud | |
| |
| |
Working with Data | |
| |
| |
Design Your Data | |
| |
| |
Separate Data Design from Storage Schema | |
| |
| |
Build Occasionally Connected Applications | |
| |
| |
Write Connected, Service-Oriented Solutions | |
| |
| |
Develop an Application/Business Process | |
| |
| |
Create and Consume Services | |
| |
| |
Summary | |
| |
| |
| |
The Visual Studio IDE | |
| |
| |
Installing Visual Studio | |
| |
| |
Choosing a Language | |
| |
| |
Configuring Your Development Environment Settings | |
| |
| |
Getting Started | |
| |
| |
Startup Options | |
| |
| |
Creating Your First Project | |
| |
| |
Targeting Your Environment | |
| |
| |
Navigating the IDE | |
| |
| |
The Menus | |
| |
| |
The Many Toolbars | |
| |
| |
Customizing Toolbars | |
| |
| |
The Solution Explorer | |
| |
| |
The Text Editors | |
| |
| |
The Visual Designers | |
| |
| |
The Toolbox | |
| |
| |
The Properties Window | |
| |
| |
Managing the Many Windows of the IDE | |
| |
| |
Pinning | |
| |
| |
Docking | |
| |
| |
Navigating IDE Windows | |
| |
| |
Customize Your Font | |
| |
| |
Summary | |
| |
| |
| |
The .NET Languages | |
| |
| |
Language Primer | |
| |
| |
Programming Objects | |
| |
| |
Types, Variables, and Constants | |
| |
| |
Operators | |
| |
| |
Making Decisions and Branching Code | |
| |
| |
Looping | |
| |
| |
Working with Groups of Items | |
| |
| |
Programming with Attributes | |
| |
| |
Creating and Raising Events | |
| |
| |
Language Features | |
| |
| |
Infer a Variable's Data Type Based on Assignment | |
| |
| |
Create an Object and Set Its Properties with a Single Line of Code | |
| |
| |
Define a Collection and Initialize Its Values (New) | |
| |
| |
Create an Instance of a Nonexistent Class | |
| |
| |
Add Methods to Existing Classes | |
| |
| |
Add Business Logic to Generated Code | |
| |
| |
Access and Query Data Using the .NET Languages | |
| |
| |
Write Simple, Unnamed Functions Within Your Code | |
| |
| |
Split an Assembly Across Multiple Files | |
| |
| |
Work with XML Directly Within Your Code (VB Only) | |
| |
| |
Remove Unused Arguments from Event Handlers (VB Only) | |
| |
| |
Create an Automatically Implemented Property (New for VB) | |
| |
| |
Drop the Underscore in VB for Line Continuation (New) | |
| |
| |
Work with Dynamic Languages/Objects (New) | |
| |
| |
Covariance and Contravariance (New) | |
| |
| |
The .NET Framework | |
| |
| |
A Map to the .NET Framework | |
| |
| |
Summary | |
| |
| |
| |
An In-Depth Look at the IDE | |
| |
| |
| |
Solutions and Projects | |
| |
| |
Understanding Solutions | |
| |
| |
Creating a Solution | |
| |
| |
Working with Solutions | |
| |
| |
Getting Comfortable with Projects | |
| |
| |
Creating a Project | |
| |
| |
Working with Project Definition Files | |
| |
| |
Working with Projects | |
| |
| |
Summary | |
| |
| |
| |
Browsers and Explorers | |
| |
| |
Solution Explorer | |
| |
| |
Visual Cues and Icons | |
| |
| |
Managing Solutions | |
| |
| |
Managing Projects | |
| |
| |
Class View | |
| |
| |
Toolbar | |
| |
| |
Search Bar | |
| |
| |
Objects Pane | |
| |
| |
Members Pane | |
| |
| |
Server Explorer | |
| |
| |
Data Connections | |
| |
| |
Server Components | |
| |
| |
Object Browser | |
| |
| |
Changing the Scope | |
| |
| |
Browsing Objects | |
| |
| |
Document Outline | |
| |
| |
Editing Elements | |
| |
| |
Summary | |
| |
| |
| |
Introducing the Editors and Designers | |
| |
| |
The Basics | |
| |
| |
The Text Editor | |
| |
| |
Visual Studio Designers | |
| |
| |
Coding with the Code Editor | |
| |
| |
Opening an Editor | |
| |
| |
Writing Code in the Code Editor | |
| |
| |
Anatomy of the Code Editor Window | |
| |
| |
Code Navigation Tools | |
| |
| |
Searching Documents | |
| |
| |
Debugging in the Text Editor | |
| |
| |
Printing Code | |
| |
| |
Using the Code Definition Window | |
| |
| |
Creating and Editing XML Documents and Schema | |
| |
| |
Inferring Schema | |
| |
| |
Designing XML Schemas | |
| |
| |
Editing XSLT Style Sheets | |
| |
| |
Working with Cascading Style Sheets | |
| |
| |
Adding Style Rules | |
| |
| |
Defining Style Sheet Attributes | |
| |
| |
Developing Windows Client Applications | |
| |
| |
Creating a Windows Forms Project | |
| |
| |
Creating a Windows Presentation Foundation Project | |
| |
| |
Developing Web Forms | |
| |
| |
Designing a Web Form Application | |
| |
| |
Authoring WinForms Components and Controls | |
| |
| |
Creating a New Component or Control | |
| |
| |
Further Notes on Writing Component Code | |
| |
| |
Creating Classes with the Class Designer | |
| |
| |
Creating a Class Diagram | |
| |
| |
Adding Items to the Diagram | |
| |
| |
Defining Relationships Between Classes | |
| |
| |
Defining Methods, Properties, Fields, and Events | |
| |
| |
Summary | |
| |
| |
| |
The .NET Community: Interacting Online | |
| |
| |
The Community Features of Visual Studio | |
| |
| |
The Visual Studio Start Page | |
| |
| |
Accessing Help | |
| |
| |
Manage Your Help Settings | |
| |
| |
Using the Visual Studio Documentation | |
| |
| |
MSDN Forums | |
| |
| |
Reporting a Bug and Other Customer Feedback Options | |
| |
| |
Samples | |
| |
| |
Discovering and Consuming Shared Content | |
| |
| |
Examining Shared Content Types | |
| |
| |
Finding the Right Content | |
| |
| |
Installing and Storing Shared Content | |
| |
| |
Participating in the Community | |
| |
| |
Starter Kits Versus Templates | |
| |
| |
Creating a Project Template | |
| |
| |
Creating Item Templates | |
| |
| |
Packaging Your Creation for Wider Distribution | |
| |
| |
Summary | |
| |
| |
| |
Writing and Working with Code | |
| |
| |
| |
Working with Visual Studio's Productivity Aids | |
| |
| |
Basic Aids in the Text Editor | |
| |
| |
Change Tracking | |
| |
| |
Coding Problem Indicators | |
| |
| |
Active Hyperlinking | |
| |
| |
Syntax Coloring | |
| |
| |
Outlining and Navigation | |
| |
| |
Code Outlining | |
| |
| |
Tag Navigation | |
| |
| |
Smart Tags and Smart Tasks | |
| |
| |
HTML Designer | |
| |
| |
Windows Forms Designer | |
| |
| |
Code Editor | |
| |
| |
IntelliSense | |
| |
| |
Complete Word | |
| |
| |
Quick Info | |
| |
| |
List Members | |
| |
| |
Parameter Info | |
| |
| |
Organize Usings | |
| |
| |
Code Snippets and Template Code | |
| |
| |
Brace Matching | |
| |
| |
Customizing IntelliSense | |
| |
| |
The Task List | |
| |
| |
Comment Tasks | |
| |
| |
Shortcut Tasks | |
| |
| |
User Tasks | |
| |
| |
Summary | |
| |
| |
| |
Testing Code | |
| |
| |
Unit Testing Basics | |
| |
| |
Creating a Test Project | |
| |
| |
Generating Tests from Existing Code | |
| |
| |
Writing an Actual Unit Test | |
| |
| |
Running Your Tests | |
| |
| |
Viewing Test Results | |
| |
| |
Configuring Testing Options and Settings | |
| |
| |
The Unit Testing Framework | |
| |
| |
The TestContext Class | |
| |
| |
The Test Attribute Classes | |
| |
| |
Unit Test Setup and Tear Down | |
| |
| |
The Assert Classes | |
| |
| |
Testing Your Exceptions | |
| |
| |
Creating Data-Bound Unit Tests | |
| |
| |
Writing ASP.NET Hosted Unit Tests | |
| |
| |
Defining ASP.NET Attributes | |
| |
| |
Generating an ASP.NET Unit Test | |
| |
| |
Configuring Your Test Project Host | |
| |
| |
Configuring Unit Test Attributes | |
| |
| |
Defining a Connection with the Properties Dialog Box | |
| |
| |
Creating Ordered Tests | |
| |
| |
Organizing Your Tests | |
| |
| |
The Test View Window | |
| |
| |
The Test List Editor | |
| |
| |
Summary | |
| |
| |
| |
Refactoring Code | |
| |
| |
Visual Studio Refactoring Basics | |
| |
| |
Invoking the Refactoring Tools | |
| |
| |
Previewing Changes | |
| |
| |
Renaming Code | |
| |
| |
Accessing the Rename Operation | |
| |
| |
Working with the Rename Dialog Box | |
| |
| |
Extract Method | |
| |
| |
Accessing the Extract Method Refactor | |
| |
| |
Extracting Methods | |
| |
| |
Generate Method Stub | |
| |
| |
Extract Interface | |
| |
| |
Accessing the Extract Interface Refactor | |
| |
| |
Extracting Interfaces | |
| |
| |
Refactor Parameters | |
| |
| |
Remove Parameters | |
| |
| |
Reorder Parameters | |
| |
| |
Encapsulate Field | |
| |
| |
Accessing Encapsulate Field | |
| |
| |
The Encapsulate Field Dialog Box | |
| |
| |
Summary | |
| |
| |
| |
Debugging Code | |
| |
| |
Debugging Basics | |
| |
| |
The Scenario | |
| |
| |
The Many Phases of Debugging | |
| |
| |
Debugging the Application (Self-Checking) | |
| |
| |
Debugging Basics Summary | |
| |
| |
The Visual Studio Debugger | |
| |
| |
The Debug Menu and Toolbar | |
| |
| |
Debug Options | |
| |
| |
Stepping In, Out, and Over Code | |
| |
| |
Indicating When to Break into Code | |
| |
| |
Working with Tracepoints (When Hit Option) | |
| |
| |
Viewing Data in the Debugger | |
| |
| |
Using the Edit and Continue Feature | |
| |
| |
Advanced Debugging Scenarios | |
| |
| |
Remote Debugging | |
| |
| |
Debugging WCF Services | |
| |
| |
Debugging Multithreaded Applications | |
| |
| |
Debugging Parallel Applications | |
| |
| |
Debugging a Client-Side Script | |
| |
| |
Debugging Crash Information (Dump Files) | |
| |
| |
Summary | |
| |
| |
| |
Deploying Code | |
| |
| |
An Overview of Client Deployment Options | |
| |
| |
Introducing ClickOnce Deployments | |
| |
| |
Introducing Windows Installer-Based Deployments | |
| |
| |
Publishing a Project with ClickOnce | |
| |
| |
Publishing a Project with the Windows Installer | |
| |
| |
The File System Editor | |
| |
| |
The Registry Editor | |
| |
| |
The File Types Editor | |
| |
| |
The User Interface Editor | |
| |
| |
The Custom Actions Editor | |
| |
| |
The Launch Conditions Editor | |
| |
| |
Publishing an ASP.NET Website or Application | |
| |
| |
Using the Web Deployment Tool | |
| |
| |
Using the Copy Web Site Tool | |
| |
| |
Summary | |
| |
| |
| |
Extending Visual Studio | |
| |
| |
| |
Introducing the Automation Object Model | |
| |
| |
An Overview of the Automation Object Model | |
| |
| |
Object Model Versions | |
| |
| |
Automation Categories | |
| |
| |
The DTE/DTE2 Root Object | |
| |
| |
Solution and Project Objects | |
| |
| |
Controlling Projects in a Solution | |
| |
| |
Accessing Code Within a Project | |
| |
| |
Windows | |
| |
| |
Referencing Windows | |
| |
| |
Interacting with Windows | |
| |
| |
Text Windows and Window Panes | |
| |
| |
The Tool Window Types | |
| |
| |
Linked Windows | |
| |
| |
Command Bars | |
| |
| |
Documents | |
| |
| |
Text Documents | |
| |
| |
Command Objects | |
| |
| |
Executing a Command | |
| |
| |
Mapping Key Bindings | |
| |
| |
Debugger Objects | |
| |
| |
Automation Events | |
| |
| |
Summary | |
| |
| |
| |
Writing Macros | |
| |
| |
Recording a Macro | |
| |
| |
Using the Macro Explorer | |
| |
| |
Writing Macros with the Macro IDE | |
| |
| |
Working with Macro Projects | |
| |
| |
Writing a Macro | |
| |
| |
Debugging | |
| |
| |
Handling Events | |
| |
| |
Invoking Macros | |
| |
| |
Summary | |
| |
| |
| |
Writing Add-ins and Wizards | |
| |
| |
Creating Your First Add-in Project | |
| |
| |
Setting Add-in Parameters | |
| |
| |
The Structure of an Add-in | |
| |
| |
The Life Cycle of an Add-in | |
| |
| |
Reacting to Commands | |
| |
| |
Managing Add-ins | |
| |
| |
A Sample Add-in: Color Palette | |
| |
| |
Getting Started | |
| |
| |
Creating the User Control | |
| |
| |
Finishing the Connect Class | |
| |
| |
Exposing Add-in Settings | |
| |
| |
Creating a Visual Studio Wizard | |
| |
| |
Examining the Wizard Structure | |
| |
| |
Creating an Add New Item Wizard | |
| |
| |
Summary | |
| |
| |
| |
Extending the Code Editor Using MEF | |
| |
| |
The Extensibility Problem | |
| |
| |
Creating Dynamic Applications | |
| |
| |
MEF Architecture | |
| |
| |
MEF Principles | |
| |
| |
Working with MEF | |
| |
| |
The Visual Studio Editor and MEF | |
| |
| |
Editor Extension Points | |
| |
| |
Using the Visual Studio SDK | |
| |
| |
Using the Extension Manager | |
| |
| |
Creating Your Own MEF-Based Editor Extension | |
| |
| |
Summary | |
| |
| |
| |
Creating Enterprise Applications | |
| |
| |
| |
Creating ASP.NET Applications | |
| |
| |
The Basics of an ASP.NET Website | |
| |
| |
Creating a New Website or Web Application | |
| |
| |
Controlling Project Properties and Options | |
| |
| |
Creating Web Pages | |
| |
| |
Designing Your User Interface | |
| |
| |
Determining Page Layout and Control Positioning | |
| |
| |
Creating a Common Look and Feel | |
| |
| |
Creating a User-Configurable UI | |
| |
| |
Working with the ASP.NET Controls | |
| |
| |
An Overview of the ASP.NET Controls | |
| |
| |
The ASP.NET Standard Controls | |
| |
| |
Validation Controls | |
| |
| |
The Login Controls | |
| |
| |
Site Navigation Controls | |
| |
| |
Data Controls | |
| |
| |
User Controls | |
| |
| |
Creating an ASP.NET MVC Application | |
| |
| |
Understanding ASP.NET MVC | |
| |
| |
Creating an MVC Project | |
| |
| |
Creating Functionality Using ASP.NET MVC | |
| |
| |
Summary | |
| |
| |
| |
Building Windows Forms Applications | |
| |
| |
The Basics of Form Design | |
| |
| |
Considering the End User | |
| |
| |
Understanding the Role of UI Standards | |
| |
| |
Planning the User Interface | |
| |
| |
Creating a Form | |
| |
| |
The Windows Forms Application Project Type | |
| |
| |
Form Properties and Events | |
| |
| |
Adding Controls and Components | |
| |
| |
Control Layout and Positioning | |
| |
| |
Using Containers | |
| |
| |
Control Appearance and Behavior | |
| |
| |
Working with ToolStrip Controls | |
| |
| |
Displaying Data | |
| |
| |
Creating Your Own Controls | |
| |
| |
Subclassing an Existing Control | |
| |
| |
Designing a User Control | |
| |
| |
Creating a Custom Control | |
| |
| |
Summary | |
| |
| |
| |
Creating Richer, Smarter User Interfaces | |
| |
| |
The Windows Presentation Foundation Platform | |
| |
| |
Programming Model | |
| |
| |
Introducing the WPF Designer | |
| |
| |
XAML and Design Panes | |
| |
| |
Programming with WPF | |
| |
| |
Layout | |
| |
| |
Styles and Templates | |
| |
| |
Data Binding | |
| |
| |
Routed Events | |
| |
| |
Building a Simple Image Viewer Application | |
| |
| |
Starting the Layout | |
| |
| |
Storing the Images | |
| |
| |
Binding to the Images | |
| |
| |
Button Event Handlers and Image Effects | |
| |
| |
Path Selection with a Common Dialog Box | |
| |
| |
Summary | |
| |
| |
| |
Creating Rich Browser Applications | |
| |
| |
Building Rich, Cross-Browser Interfaces with ASP.NET Ajax | |
| |
| |
The ASP.NET Ajax Controls | |
| |
| |
Creating a Page that Supports Partial Update | |
| |
| |
The ASP.NET Ajax Library/Control Toolkit | |
| |
| |
Creating Unique, Rich Experiences on Windows via the Browser | |
| |
| |
Choosing Between WPF Standalone and WPF XBAP | |
| |
| |
Creating a WPF Browser Application | |
| |
| |
Security Considerations | |
| |
| |
Deploying a WPF Browser Application | |
| |
| |
Delivering Interactive Experiences Across Platforms | |
| |
| |
Getting Started with Silverlight | |
| |
| |
Creating a Silverlight Application | |
| |
| |
Silverlight 4.0 | |
| |
| |
Summary | |
| |
| |
| |
Working with Databases | |
| |
| |
Creating Tables and Relationships | |
| |
| |
Creating a New SQL Server Database | |
| |
| |
Defining Tables | |
| |
| |
Using the Database Diagram Designer | |
| |
| |
Working with SQL Statements | |
| |
| |
Writing a Query | |
| |
| |
Creating Views | |
| |
| |
Developing Stored Procedures | |
| |
| |
Creating Triggers | |
| |
| |
Creating User-Defined Functions | |
| |
| |
Using Database Projects | |
| |
| |
Creating a Database Project | |
| |
| |
The Schema View | |
| |
| |
Building and Deploying | |
| |
| |
A Note on Data Tier Applications | |
| |
| |
Creating Database Objects in Managed Code | |
| |
| |
Starting a SQL CLR Project | |
| |
| |
Creating a Stored Procedure in C# | |
| |
| |
Binding Controls to Data | |
| |
| |
An Introduction to Data Binding | |
| |
| |
Auto-Generating Bound Windows Forms Controls | |
| |
| |
Editing Typed DataSets | |
| |
| |
Manually Binding Windows Forms Controls | |
| |
| |
Data Binding in WPF Applications | |
| |
| |
Data Binding with Web Controls | |
| |
| |
Object Relational Mapping | |
| |
| |
An Overview of LINQ | |
| |
| |
Mapping Using the O/R Designer | |
| |
| |
LINQ Code | |
| |
| |
Working with the Entity Framework | |
| |
| |
Querying Against the Entity Data Model | |
| |
| |
Summary | |
| |
| |
| |
Service-Oriented Applications | |
| |
| |
Service Fundamentals | |
| |
| |
Why ASP.NET Web Services and WCF | |
| |
| |
ASP.NET Web Service Applications | |
| |
| |
The ASP.NET Web Service Project Template | |
| |
| |
Coding an ASP.NET Web Service | |
| |
| |
Consuming an ASP.NET Web Service | |
| |
| |
ASP.NET Web Service Exceptions | |
| |
| |
WCF Service Applications | |
| |
| |
The WCF Project Template | |
| |
| |
Creating a WCF Service | |
| |
| |
Configuring a WCF Service | |
| |
| |
Consuming a WCF Service | |
| |
| |
Hosting and Deploying a WCF Service | |
| |
| |
Summary | |
| |
| |
| |
Embedding Workflow in Your Applications | |
| |
| |
Windows Workflow Fundamentals | |
| |
| |
The Components of a Workflow | |
| |
| |
The Workflow Project Templates | |
| |
| |
The Workflow Designer | |
| |
| |
The Workflow Item Templates | |
| |
| |
The Basics of Creating a Workflow | |
| |
| |
Working with the Built-In Workflow Activities | |
| |
| |
Controlling Flow | |
| |
| |
Runtime and Primitives | |
| |
| |
Error Handling | |
| |
| |
Collection Activities | |
| |
| |
Supporting Transactions | |
| |
| |
Managing Messages | |
| |
| |
Creating Flowchart Workflows | |
| |
| |
Creating a Workflow Application | |
| |
| |
The Scenario: Travel Request | |
| |
| |
The Application Project Templates | |
| |
| |
Create the Database and Data Access Library | |
| |
| |
Create the Vendor Reservation Service | |
| |
| |
Create the Custom Activity Library | |
| |
| |
Design the Workflow (Travel Request) | |
| |
| |
Creating the Client Application (Request and Approval Forms) | |
| |
| |
Running the Travel Request Workflow Application | |
| |
| |
Summary | |
| |
| |
| |
Developing Office Business Applications | |
| |
| |
An Overview of Office Extension Features | |
| |
| |
Office Features | |
| |
| |
Visual Studio Office Project Types | |
| |
| |
Creating an Office Add-in | |
| |
| |
Customizing the Ribbon | |
| |
| |
Customizing the Task Pane | |
| |
| |
Creating Outlook Form Regions | |
| |
| |
Creating an Office Document Extension | |
| |
| |
Hosting Controls | |
| |
| |
Creating an Actions Pane | |
| |
| |
Storing Data in the Data Cache | |
| |
| |
Implementing Your Own Smart Tags | |
| |
| |
Summary | |
| |
| |
| |
Developing Applications in the Cloud with Windows Azure | |
| |
| |
Azure Fundamentals | |
| |
| |
Azure Platform Benefits | |
| |
| |
Setting Up Your Development Environment | |
| |
| |
Azure Roles | |
| |
| |
The Azure Project Templates | |
| |
| |
Azure Storage Options | |
| |
| |
Hello Cloud | |
| |
| |
Building and Deploying an Azure Application | |
| |
| |
The Scenario | |
| |
| |
Developing the Application | |
| |
| |
Subscribing to the Azure Services (Get an Account) | |
| |
| |
Creating a Storage Account | |
| |
| |
Creating a Hosted Service Account | |
| |
| |
Preparing Your Application for Publishing | |
| |
| |
Publish and Deploy Your Application to the Cloud | |
| |
| |
Promoting to Production | |
| |
| |
Next Steps | |
| |
| |
Summary | |
| |
| |
9780672330810 TOC 7/8/2010 | |