Saturday 5 July 2014

Access Data in SharePoint 2010 Web Parts by Using LINQ

Access Data in SharePoint 2010 Web Parts by Using LINQ
http://msdn.microsoft.com/en-us/library/ff742312.aspx
* Create a Visual Web Part Project
* Generate LINQ to SharePoint Proxy Code
* Add Code to Read Data from a SharePoint List
* Deploy and Add the Web Part to a Web Part Page
Create a Visual Web Part Project
In this task, you create a Visual Web Part project in Microsoft Visual Studio 2010.
note Note:
The following tasks assume that there are lists titled Employees and Projects on the default SharePoint website. Find instructions about how to create these two lists in Create Linked Lists in SharePoint 2010.
To create the Visual Web Part
1.
Start Visual Studio 2010, click File, point to New, and then click Project.
2.
Navigate to the Visual C# node in the Installed Templates section, click SharePoint, and then click 2010.
3.
Select the Visual Web Part project template, provide a name (such as AccessSPDatawithLINQ) and a location for your project, and then click OK.
4.
In the What local site do you want to use for debugging drop-down list, select the site to use (such as http://localhost/sites/MySampleWebSite). Also select the Deploy as a farm solution option and then click Finish.
Note that after the project is created, Solution Explorer contains the visual Web Part named VisualWebPart1 (see Figure 1).
Figure 1. AccessSPDatawithLINQ project in Solution Explorer
AccessSPDatawithLINQ project in Solution Explorer
Generate LINQ to SharePoint Proxy Code
In this task, you use the spmetal.exe code-generation utility to generate the LINQ to SharePoint proxy code. The tool generates entity class code that Visual Studio 2010 uses as an interface to obtain IntelliSense and enable LINQ-based queries to be performed on SharePoint Server 2010 lists.
To generate the LINQ proxy code
1.
In Solution Explorer, right-click AccessSPDatawithLINQ and then click Open Folder in Windows Explorer.
2.
Press and hold the SHIFT key, right-click the Explorer window, and then click Open command window here to open the command window in the current project directory.
3.
In the command window, type the following command and press the ENTER key to set the path of the SharePoint Server 2010 folder.
set path=%path%;c:\program files\common files\microsoft shared\web server extensions\14\bin
4.
In the command window, type the following command and press the ENTER key to generate the LINQ to SharePoint proxy code. Replace the SharePoint site URL with your own site's URL.
spmetal.exe /web:http://localhost/sites/MySampleWebSite /namespace:AccessSPDatawithLINQ.VisualWebPart1 /code:SPLinq.cs
This command creates the SPLinq.cs file in the AccessSPDatawithLINQ project folder.
5.
Close the command window.
6.
Now add the file to the project. Switch back to the Visual Studio project screen.
7.
In Solution Explorer, right-click AccessSPDatawithLINQ, point to Add, and then click Existing Item.
8.
Select SPLinq.cs from the Add Existing Item dialog window and then click Add.
9.
In Solution Explorer, right-click References and then click Add Reference.
10.
Click the Browse tab and type C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\ISAPI in the File Name box.
11.
Select Microsoft.SharePoint.Linq.dll and then click OK.
Add Code to Read Data from a SharePoint List
In this task, you add code to your solution that enables the visual Web Part to retrieve data from the SharePoint Server 2010 lists.
To add code to the project
1.
In Solution Explorer, expand VisualWebPart1 and then double-click VisualWebPart1UserControl.ascx. Visual Studio displays the HTML for the visual Web Part user control.
2.
Add the following code at the bottom of the existing code to construct the grid view.
Copy
The HTML for the visual Web Part user control should resemble Figure 2 after you add the code.
Figure 2. Complete code in the visual Web Part user control
Code in visual Web Part user control
3.
In Solution Explorer, right-click VisualWebPart1UserControl.ascx and then click View Code.
4.
Add the following statements to the code at the top of the code screen.
VB
C#
C++
F#
JScript
Copy
No code example is currently available or this language may not be supported.
5.
Insert the following code inside the Page_Load method.
VB
C#
C++
F#
JScript
Copy
No code example is currently available or this language may not be supported.
Deploy and Add the Web Part to a Web Part Page
In this task, you deploy the Web Part and add it to the Home page on the SharePoint Server 2010 website.
To deploy and test the visual Web Part
1.
In Solution Explorer, right-click AccessSPDatawithLINQ and then click Deploy. This builds and deploys the visual Web Part to the SharePoint site that you specified earlier.
2.
Open Internet Explorer and browse to the SharePoint site.
3.
Click the Edit icon at the top of the Home page to start to edit the page.
4.
On the ribbon, on the Editing Tools tab, click Insert, and then click Web Part.
5.
In the Categories section, click Custom, and in the Web Parts section, click SPLinqDemoTitle, and then click Add as shown in Figure 3.
Figure 3. Select the SPlinqDemoTitle Web Part
Select SPlinqDemoTitle Web Part
This adds the SPLinqDemoTitle Web Part to the Home page as shown in Figure 4.
Figure 4. SPLinqDemoTitle Web Part added to the Home page
SPLinqDemoTitle Web Part added to Home page
6.
On the ribbon, click Stop Editing to save the page and stop editing.
7.
Close Internet Explorer.