1. To create a list instance with SP object Model.
using System;
using Microsoft.SharePoint;
class Program {
static void Main() {
using (SPSite site = new SPSite("http://localhost")) {
using (SPWeb web = site.OpenWeb()) {
string listName = "Litware News";
SPList list = null;
foreach (SPList currentList in web.Lists) {
if (currentList.Title.Equals(listName,
StringComparison.InvariantCultureIgnoreCase)) {
list = currentList;
break;
}
}
if (list == null) {
Guid listID = web.Lists.Add(listName,
"List for big news items",
SPListTemplateType.Announcements);
list = web.Lists[listID];
list.OnQuickLaunch = true;
list.Update();
}
}
}
}
}
2. How to use GetList() method?
SPList announcementsList = web.GetList("/Lists/Announcements");
3. To create and save a new list item.
SPListItem newItem = list.Items.Add();
newItem ["Title"] = "Litware Goes Public!";
newItem ["Body"] = " We all live in exciting times.";
newItem["Expires"] = DateTime.Now + TimeSpan.FromDays(2);
newItem.Update();
4. How to enumerate through the fields in a list by using a foreach construct?
foreach (SPField field in list.Fields)
{
if (!field.Hidden && !field.ReadOnlyField)
Console.WriteLine(field.Title);
}
5. How to use CAML Query with SPQuery Object?
SPQuery query = new SPQuery();
query.ViewFields = @"<fieldref name="Title"><fieldref name="Expires">";
query.Query =
@"<where>
<lt>
<fieldref name="Expires">
<value type="DateTime">
<today></today></value>
</fieldref></lt>
</where>";
SPList list = site.Lists["Litware News"];
SPListItemCollection items = list.GetItems(query);
foreach (SPListItem expiredItem in items) {
Console.WriteLine(expiredItem["Title"]);
}
6. How to use SPSiteDataQuery ?
SPSiteDataQuery query = new SPSiteDataQuery();
query.Lists = @"<lists servertemplate="104">";
query.ViewFields = @"<fieldref name="Title"><fieldref name="Created">";
query.Webs = "<webs scope="SiteCollection">";
string queryText =
@"<where>
<eq>
<fieldref name="Created">
<value datetime="" type="">
<today>
</today></value>
</fieldref></eq>
</where>";
query.Query = queryText;
DataTable table = site.GetSiteData(query);
foreach (DataRow row in table.Rows) {
Console.WriteLine(row["Title"].ToString());
}
7. Difference between SPquery and SPSiteDataQuery?
using System;
using Microsoft.SharePoint;
class Program {
static void Main() {
using (SPSite site = new SPSite("http://localhost")) {
using (SPWeb web = site.OpenWeb()) {
string listName = "Litware News";
SPList list = null;
foreach (SPList currentList in web.Lists) {
if (currentList.Title.Equals(listName,
StringComparison.InvariantCultureIgnoreCase)) {
list = currentList;
break;
}
}
if (list == null) {
Guid listID = web.Lists.Add(listName,
"List for big news items",
SPListTemplateType.Announcements);
list = web.Lists[listID];
list.OnQuickLaunch = true;
list.Update();
}
}
}
}
}
2. How to use GetList() method?
SPList announcementsList = web.GetList("/Lists/Announcements");
3. To create and save a new list item.
SPListItem newItem = list.Items.Add();
newItem ["Title"] = "Litware Goes Public!";
newItem ["Body"] = " We all live in exciting times.";
newItem["Expires"] = DateTime.Now + TimeSpan.FromDays(2);
newItem.Update();
4. How to enumerate through the fields in a list by using a foreach construct?
foreach (SPField field in list.Fields)
{
if (!field.Hidden && !field.ReadOnlyField)
Console.WriteLine(field.Title);
}
5. How to use CAML Query with SPQuery Object?
SPQuery query = new SPQuery();
query.ViewFields = @"<fieldref name="Title"><fieldref name="Expires">";
query.Query =
@"<where>
<lt>
<fieldref name="Expires">
<value type="DateTime">
<today></today></value>
</fieldref></lt>
</where>";
SPList list = site.Lists["Litware News"];
SPListItemCollection items = list.GetItems(query);
foreach (SPListItem expiredItem in items) {
Console.WriteLine(expiredItem["Title"]);
}
6. How to use SPSiteDataQuery ?
SPSiteDataQuery query = new SPSiteDataQuery();
query.Lists = @"<lists servertemplate="104">";
query.ViewFields = @"<fieldref name="Title"><fieldref name="Created">";
query.Webs = "<webs scope="SiteCollection">";
string queryText =
@"<where>
<eq>
<fieldref name="Created">
<value datetime="" type="">
<today>
</today></value>
</fieldref></eq>
</where>";
query.Query = queryText;
DataTable table = site.GetSiteData(query);
foreach (DataRow row in table.Rows) {
Console.WriteLine(row["Title"].ToString());
}
7. Difference between SPquery and SPSiteDataQuery?
SPQuery object return an SPListItemCollection. SPSiteDataQuery object are different, because they return an ADO.NET DataTable object.
8. Visit through document library in SharePoint Site.
SPWeb site = SPContext.Current.Web;
foreach (SPList list in site.Lists) {
if (list is SPDocumentLibrary && !list.Hidden) {
SPDocumentLibrary docLib = (SPDocumentLibrary)list;
// Add document library to DropDownList control
lstTargetLibrary.Items.Add(
new ListItem(docLib.Title, docLib.ID.ToString()));
}
}