The code to accomplish this is quite easy, you add a web part that is displaying data for a list,
First you get a reference to the SPWeb in which you want to add the web part, and to the list you want to use (in this example the Contacts list). Next you create an instance of the ListViewWebPart class, in which you can set the ZoneID, the ListName and the ViewGuid. This is the tricky part, the ListName property should contain the ID of your list (a GUID), not the name of your list!! But the ListName property is of the type string, so you need to convert the List GUID to a string using .ToString(“B”).ToUpper(). The same goes for the ViewGuid. Finally you need to get a reference to the WebPartCollection for the page in which you want to add the web part (in this example the home page, being default.aspx). Now you can add the web part using the Add method.
using Microsoft.SharePoint; using Microsoft.SharePoint.WebPartPages; // Get a reference to a web and a list SPSite site = new SPSite("http://localhost:8000"); SPWeb web = site.OpenWeb(); SPList list = web.Lists["Contacts"]; // Instantiate the web part ListViewWebPart wp = new ListViewWebPart(); wp.ZoneID = "Left"; wp.ListName = list.ID.ToString("B").ToUpper(); wp.ViewGuid = list.DefaultView.ID.ToString("B").ToUpper(); // Get the web part collection SPWebPartCollection coll = web.GetWebPartCollection("default.aspx", Storage.Shared); // Add the web part coll.Add(wp);
First you get a reference to the SPWeb in which you want to add the web part, and to the list you want to use (in this example the Contacts list). Next you create an instance of the ListViewWebPart class, in which you can set the ZoneID, the ListName and the ViewGuid. This is the tricky part, the ListName property should contain the ID of your list (a GUID), not the name of your list!! But the ListName property is of the type string, so you need to convert the List GUID to a string using .ToString(“B”).ToUpper(). The same goes for the ViewGuid. Finally you need to get a reference to the WebPartCollection for the page in which you want to add the web part (in this example the home page, being default.aspx). Now you can add the web part using the Add method.