SharePoint Events

 11/18/15 - Webcast: Collaborative Project & Program Management for the AEC & Facilities with SharePoint & Office 365
 11/19/15 - Webcast: Easily Design, Brand and Enhance the User Experience of SharePoint and Office 365
 12/01/15 - Webcast: Legal Matters Management in SharePoint & Office 365
 12/02/15 - Webcast: Easily and Cost Effectively Migrate to Office 365 and the Cloud
 12/03/15 - Webcast: AEC and Facilities Document Control with SharePoint & Office 365 (RFI/Transmittal/Submittal Management)
 12/04/15 - Webcast: Drive User Adoption & Search with Automated Metadata in SharePoint
(More Links...)

 SharePoint Videos

 What’s Coming in Office 365 & SharePoint 2016
 Automating Contract Management with Workflow in the Cloud or On-Premise
 Manage Email in the Cloud or On-Premise with SharePoint & Office 365
 Governance Essentials for SharePoint 2013 and SharePoint Online
 Easily Move Email, Files and SharePoint to Office 365
 Enterprise Workflow in the cloud with SharePoint & Office 365
 Why SharePoint 2013
 SharePoint 2013 vs SharePoint Online and Office 365 Security, Compliance and eDiscovery
 Expanding the Use, Potential and Value of SharePoint and Office 365 through 3rd Party Applications
 Keys to Successful SharePoint Initiatives and User Adoption
 SharePoint 2013 vs. SharePoint Online: Workflow
 Ensure Auditability and Compliance with Advanced Workflows in SharePoint
 SharePoint 2013 vs. SharePoint Online and Office 365: Enterprise Content Management
 SharePoint 2013 vs. SharePoint Online and Office 365: Business Intelligence
 SharePoint 2013 vs. SharePoint Online: Search
 Power Business Intelligence for SharePoint Online and Office 365
 Enforce Governance with Ease in SharePoint and SharePoint Online
 Digitize Paper Driven Processes with Dynamic Web Forms in SharePoint
 Boost Performance and Eliminate Storage Limitations in SharePoint
 Out of the Box Business Intelligence and Reporting in SharePoint 2013
(More Links...)

 Archives ‭[1]‬

Opening SharePoint Links in a new window
Mail Enabled Lists vs. The Missing Windows 2008 POP3/IMAP Server 
7 Tools for SharePoint Developers
Public Facing Masterpage Techniques
How to Quickly Deploy and Activate a Timer Service to Your Site Collection
Custom SharePoint Master Page Feature with WSP Builder
Date Math with InfoPath
Enterprise Search Tricks and Tips Part 1
Populating Word Documents With SharePoint Data. Try The DIP!
Programmatic Deep Dive into Blank SharePoint Lookup Columns
1 - 10Next
Default List Views in SharePoint Client Object Model

By: Neil Barkhina

The SharePoint client object model is very versatile at interacting with the SharePoint API from a remote location. Though almost everything can be done with the client object model, some things that are very easy to do in the native API takes a little bit more leg work. One of those examples is the way you interact with lists and libraries. All functions that collect data must be queued up and executed as a batch using the ExecuteQuery function. In this post we will look at the way you would get a Default ListView.

In the native API, iterating through list items from the default view can be done by calling SPList.GetItems(SPList.DefaultView). Unfortunately the client object model doesn’t have a DefaultView property on lists, but they can still be accessed by doing the following.


First you need to authenticate against the site by creating a ClientContext Object and passing in the URL of your SharePoint site

ClientContext clientContext1 = new ClientContext(" ");

            clientContext1.AuthenticationMode = ClientAuthenticationMode.Default;

            NetworkCredential credentials = new NetworkCredential("test", "test", "gig-werks");

            clientContext1.Credentials = credentials;


If you want to use a specific account, you can pass it in by creating a NetworkCredential object and setting it to the Credentials property of the ClientContext.

Getting Lists and Views

Next you need to queue up some objects such as the site, list, view.

ClientContext clientContext1;

       Web rootweb;

       List splist;

rootweb = clientContext1.Web;

       splist = rootweb.Lists.GetByTitle("Tasks");







If you don’t load splist.Views we won’t be able to access the views collection of the List. Then call ExecuteQuery to load the objects.

CAML Query

The next part is getting the actual items. This is done by constructing a CAML Query. The trick here is that we are using the ViewQuery property of the ListView which contains the CAML that we need to pass into the ViewXml of our query.

     CamlQuery camlQuery = new CamlQuery();

            camlQuery.ViewXml = "<View><Query>" + splist.Views[0].ViewQuery + "</Query></View>";

            ListItemCollection listItems = splist.GetItems(camlQuery);




            foreach (ListItem item in listItems)


                string taskname = safeReadString(item, "Title");



Then when you iterate through your items you will see that the sort and filter properties that were on your view come through to your ListItemCollection.


Safely Reading ListItems

In this example I also included the following function to safely read the property and handle null conditions, and then you should be good to go!

private string safeReadString(ListItem itm, string column)




                if (itm == null || itm[column] == null || itm[column].ToString() == "")

                    return "";


                return itm[column].ToString();


            catch (Exception ex)


                return "";




By: Neil Barkhina



  GigWerks RSS  Gig Werks Mailing List 

 Contact Us



 On Demand SharePoint Webcast Recordings
 Upcoming Webinars
 SharePoint Resources
 Business Intelligence Resources
 Gig Werks Website

©2009 Gig Werks. All rights reserved. Privacy Policy