What's New in SharePoint Development
As you create solutions for SharePoint 2010 Products, you can perform the following tasks more easily by using Visual Studio 2010:
Create and run unit tests, and debug SharePoint applications by using IntelliTrace. (Requires Service Pack 1.)
Import, modify, and extend solution packages (.wsp).
Develop SharePoint solutions with templates for projects and project items.
Design association and initiation forms for sequential and state workflows.
Aggregate and integrate back-end data by using Business Data Connectivity (BDC) models.
Create web parts and application pages for SharePoint sites.
Browse SharePoint sites by using Server Explorer.
Start to debug SharePoint applications by pressing F5.
Create and validate solution packages.
Extend existing SharePoint project items, and add context menus.
The tools for developing SharePoint solutions in Visual Studio 2010 resemble the Visual Studio extensions for Windows SharePoint Services (VSeWSS), which you can download for Visual Studio 2005 and Visual Studio 2008. However, these toolsets have different features and functionality.
If you install SP1, you can perform unit testing on your SharePoint applications and debug them by using IntelliTrace.
By using IntelliTrace, you can determine not only the current state of your application but also events that occurred in the past and the context in which they occurred. You can navigate back and forth to various points in time in your program where events of interest were recorded and review the states and values of variables at each point. You can also save the debugging session into a file that you can reload, and perform post-crash debugging. For more information, see Debugging with IntelliTrace.
You can more easily find errors in your code by performing unit testing, in which you write and run test code inside test methods. These methods contain empty variables and an Assert statement that you can use to verify the logic and functionality of your project and call into the SharePoint object model. For more information, see Verifying Code by Using Unit Tests.
IntelliTrace and unit testing are two features for managing your application lifecycle in Visual Studio and were previously available only in Visual Studio Premium and Visual Studio Ultimate. For more information, see Verifying and Debugging SharePoint Code by Using ALM Features and What's New for Application Lifecycle Management in Visual Studio 2010.
If you have developed SharePoint projects in tools such as SharePoint Designer 2010, you can import their items into Visual Studio 2010 by using the Import SharePoint Solution Package template. For more information, see Importing Items from an Existing SharePoint Site.
You can use many templates for project types and items to develop SharePoint sites and applications. In Visual Studio 2010, you can find project templates such as Business Data Connectivity Model, Event Receiver, List Definition, Sequential Workflow, Site Definition, and Visual Web Part. For more information, see SharePoint Project and Project Item Templates.
In Visual Studio, you can create custom workflows that manage the lifecycle of documents and list items in a SharePoint site. You can use tools such as a designer, a set of drag-and-drop activity controls, and the necessary assembly references. You can also use the SharePoint Customization Wizard to create and configure your workflows. For more information, see Creating SharePoint Workflow Solutions.
If you integrate and validate business data from a server application or a database into SharePoint, end-users can view, add, update, or delete business data by using lists and web parts. To integrate data into SharePoint, you create a model for the Business Data Connectivity service. For more information, see Integrating Business Data into SharePoint.
If you create web parts, users can directly modify the content, appearance, and behavior of SharePoint site pages by using a browser. Web parts are server-side controls that run inside a web part page. For more information, see Creating Web Parts for SharePoint.
You can use a Visual Studio designer to create application pages, which contain content that is merged with a SharePoint master page. The designer displays a content area for each content placeholder that is defined in a master page. For more information, see Creating Application Pages for SharePoint.
You can also create reusable controls for web parts or application pages. For more information, see Creating Reusable Controls for Web Parts or Application Pages.
In Visual Studio 2010, you can browse SharePoint connections by using Server Explorer and navigate through the components of a SharePoint site, such as list definitions, content types, event receivers, web parts, and modules. You can find these components in a node called SharePoint Connections in the tree view of Server Explorer. For more information, see Browsing SharePoint Connections Using Server Explorer.
Before starting a debugging session, Visual Studio copies the solution package to the server that is running SharePoint Products, activates the site and web-scoped features, and starts the project. For more information, see Building and Debugging SharePoint Solutions.
You can use Visual Studio to organize SharePoint project items into features and to create a solution package (.wsp) to deploy the SharePoint features. You can customize and create the solution package by using the following tools:
Feature Designer, with which you create features, set scopes, and mark other features as dependencies.
Package Designer, with which you group SharePoint items into a solution package.
Packaging Explorer, with which you group and view the hierarchical contents of the SharePoint project.
When Visual Studio creates the solution packages, it validates the package and package files. For more information, see Packaging and Deploying SharePoint Solutions.
You can extend Visual Studio by creating SharePoint system extensions and calling into the native object model for SharePoint. You can also extend Server Explorer by creating nodes or context menus for existing nodes. For more information, see Extending the SharePoint Tools in Visual Studio.