Tag: SharePoint 2013 (Page 1 of 9)

Multiple nodes with the same URL ‘/amsV1/analysis/PupilGrades.aspx’ were found. XmlSiteMapProvider requires that sitemap nodes have unique URLs.


You might want to look into the layouts.sitemap XML file in the C:\inetpub\wwwroot\wss\VirtualDirectories\<port>\_app_bin directory. In that path look in the layouts.sitemap file. This file should contain multiple entries for the pages in question.

SharePoint 2013/2016/Online: CSOM vs JSOM vs SSOM vs REST

This SharePoint tutorial, we will explore different hosting types and technology abbreviations used in SharePoint 2010/2013/2016 and elsewhere too. Useful API reference of the most frequently used types and objects implemented in the Server object model (SSOM) and at least one client programming model: .NET client-side object model (CSOM), JavaScript object model (JSOM), and/or REST API.

Different SharePoint Object Model Types

CSOM (Client Side Object Model)

SharePoint CSOM core assembly is Microsoft.SharePoint.Client.Runtime.dll and Microsoft.SharePoint.Client.dll, which stands for Client-Side Object Model. It is a web service-based API of SharePoint.

It allows access to SharePoint data and features from remote clients. CSOM was introduced in SharePoint 2010 and greatly enhanced in SharePoint 2013.

SP.ClientContext.get_current() for normal use. New SP.ClientContext(‘url…’) for specific SPWeb.

SSOM (Server Side Object Model)

Server Object Model core assembly is Microsoft.SharePoint.dll which is installed in the Global Assembly Cache. The Server Object Model will be executed on the server-side & it provides a rich set of classes in representing & manipulating SharePoint objects.

Must be deployed on the same farm Server-side object model. C# (or Visual Basic) uses only Microsoft.SharePoint (14) DLL. Must be deployed on the same farm.

REST (Representational State Transfer)

The SharePoint REST API interface is based on the REST-based Open Data protocol (OData) which is a platform-independent open standard. REST in 2010 is only for ListData.svc. Note that SPServices (jQuery plugin) utilizes the.asmx services in _/vti/bin , such as /_vti_bin/Webs.asmx.

sharepoint csom vs ssom, sharepoint csom vs jsom

SharePoint Model Types

CSOM (Client Side Object Model)

CSOM, which stands for Client-Side Object Model, is a web services-based API of SharePoint. It allows access to SharePoint data and features from remote clients. CSOM was introduced in SharePoint 2010 and greatly enhanced in SharePoint 2013.

JSOM (JavaScript Object Model)

Access information in the host web using the Javascript Object Model, you need to use an SP.ClientContext.get_current() for normal use. New SP.ClientContext(‘URL…’) for specific SPSite. Note this works cross-SPSite in 2013.

SSOM (Server Side Object Model)

Server Object Model is the most extensive API set available for SharePoint 2013. The core assembly is Microsoft.SharePoint.dll which is installed in the Global Assembly Cache.

The Server Object Model will be executed on the server-side & it provides a rich set of classes in representing & manipulating SharePoint objects. Must be deployed on the same farm.

REST (Representational State Transfer)

The REST API in SharePoint offers nearly the same functionality as JSOM. Furthermore, it is easier to use for a developer not coming from the SharePoint world since REST interfaces are standardized. This makes the choice of technology easier than for JSOM.

Various Hosting Option for SharePoint Code

SharePoint hosted

A SharePoint-hosted app may provide basic resources into its app web such as HTML/CSS/JS files, site column/content-type/list definitions, etc. Under no circumstances can server-side code run within a SharePoint-hosted app.

Provider hosted

Provider-hosted apps for SharePoint include components that are deployed and hosted outside the SharePoint farm. They are installed to the host web, but their remote components are hosted on another server but are meant to be hosted more manually (i.e. On Azure). So you fire up a web application, on any server, and then use S2S to connect to SharePoint.

Sandboxed Solutions

The remnant from 2010, can be uploaded to the Solution gallery through a sandbox solution. Support for a limited subset of the SSOM. No file access, so can’t deploy anything to the _layouts folder. If you use the limited SSOM-part (C#) your solution will be considered deprecated. Support for templates such as list templates and content types deployed directly to the host web.

Farm Solutions

In the case of SharePoint farm solutions, you required full access for deployment and farm solutions will be deployed through PowerShell in SharePoint 2013/2016/2019.

Microsoft officially announced the discontinuation of the Autohosted apps model in SharePoint Online/Office 365 after it has been tested for the last few months.

sharepoint csom vs ssom, sharepoint csom vs rest api, sharepoint jsom vs csom

This SharePoint tutorial we learned various options to develop components through code like SharePoint server object model, client object model, JavaScript Object model and Rest API.

courtesy: Sagar Pradeshi

How to configure metadata navigation for a document library in SharePoint Online or SharePoint 2013/2016/2019?

This SharePoint article will discuss how to configure metadata navigation for a document library in SharePoint Online or SharePoint 2013/2016/2019?

A metadata navigation filter will help the user to dynamically filter the content from the SharePoint lists or document libraries based on the metadata in SharePoint Online or SharePoint Online or SharePoint 2013/2016/2019.

What is the MetaData in SharePoint

Metadata is data about data, meaning metadata describes additional details about an item, file or document. Like Metadata for a file can be author name, document type, document size, etc. 

If you want to associate metadata to a document, first you need to add a column to the document library.

Why we have the Metadata column concept?

SharePoint introduced metadata to overcome problems with the folder structure inside a document library.

Few problems with folder structure inside the SharePoint document library are:

  1. Very difficult to get information from the nested folder structure.
  2. If you have more nested folders then you may face URL length limitation problem, because URL length is limited to ~260 characters.
  3. You can not sort or filter from SharePoint document library headers. Like this, there are lots of disadvantages.

How to configure metadata navigation for a list or library SharePoint Online/SharePoint 2010/13/16/19

To demonstrate this, I have particularly selected the SharePoint custom document library.  In this document library, I have added one custom column of choice type called “Course For” which has values like Administrator- Developer- End Users- Interview Questions & Answers. I have already uploaded a few documents to the document library as well.

  1. To work with the Metadata navigation we need to activate a site level feature “Metadata Navigation and Filtering” first.
  2. To activate that, click on the gear icon on the top right corner of a page and then click Site Content. This will open a site contents page.
  3. Click on the Site Settings link. This will open the site settings page
  4. Then click on the “Managed site features” link which is presented in the “Site Actions” category.
  5. Then in the “Site Features” features page look for the “Metadata Navigation and Filtering” feature and click on Activate like below:

Once the feature is activated successfully, go back to the document library again.

Click on the gear icon and then select “Library Settings”. In the library settings page, click on the “Metadata navigation settings” which is under General Settings.

Then in the “Metadata Navigation Settings” page go to the “Configure Key Filters” section and there you can see the available columns in the “Available Key Filter Fields” section.

Here I have added the “Course For” to appear in the filter list like below:

Now if you will go back to the document library you can see a Key Filters section must be appearing on the right side like below.

You can click on the checkbox for the Course  For, and it will show only the documents which match the filter criteria.

Configure Navigation Hierarchies: Metadata navigation is really helpful to find content in large lists or libraries.

You can also Configure navigation hierarchies from the Metadata Navigation Settings page. Visit the Metadata Navigation Settings page and then from the “Configure Navigation Hierarchies” section select the column which you want to appear in the hierarchy like below. Here I have added the Course custom column which we have created for the document library.

Note: These navigation hierarchies are only visible in the Classic experience and not in the modern experience of a site.

Conclusion: In this article, we have understood how to configure metadata navigation for a document library in SharePoint Online, and SharePoint 2013/2016/2019. 

Happy SharePointing!!!

Error occurred in deployment step ‘Recycle IIS Application Pool’: Invalid namespace


When I try to deploy a project built in Visual Studio 2017 for SharePoint 2019 on Windows Server 2019 Standard Edition. I got the same error as above.


Apparently, VS 2017 uses WMI to control IIS during a redeploy. Without the features enabled, I got the same “Invalid namespace” error.

The solution was to: open the Turn Windows Features on or off menu in the Control Panel (under Programs), and enable WMI compatibility. The path to the feature is:

How to recover SharePoint 2013 Databases from Suspect Mode ?

What is Suspect Mode ?

Suspect mode might be caused by many reasons like unavailable or corrupted database files, hardware failure etc.

Steps to recover database from the Suspect mode:


Make sure a user who is performing the below given steps has the administrator rights for the sql server/

  1. Open SQL Server Management Studio with Run as Administrator
  2. Run the following query one by one
  3. EXEC sp_resetstatus ‘SharePoint_Config’;
  5. DBCC checkdb(‘SharePoint_Config’)
  7. DBCC CheckDB (‘SharePoint_Config’, REPAIR_ALLOW_DATA_LOSS)
  9. DBCC CheckDB (‘SharePoint_Config’)

You might need to repeat these steps for each one of the affected databases.

Add a Web part section is not showing in Internet Explorer


Add a Web part section is not showing in Internet Explorer for the Intranet sites.

Resolution :

To overcome this issue for the sharepoint intranet sites we need to set this site as to be open in compatibility mode. To do that follow the steps as given below.

  1. Go to Tool > Compatibility view settings
  2. Add the url of your site in the text box and then click Add.
  3. Check the box of Display intranet sites in compatibility mode
  4. Click close.
Compatibility View Settings

Let me know in comments if this helps or not.

Happy SharePointing!!!

TrickyCoder – Best practices for SharePoint a Document Management System – part 2

This post is a in the continuation with the previous post. If you have not read that you can read it at herehttps://trickycoder.com/trickycoder-best-practices-for-sharepoint-a-document-management-system-part-1/


If the organisation requires the ability to co-author on Microsoft Office documents in the library, it is recommended not to turn on the ‘Require Check Out’ setting.

The function of this feature is to prevent alteration of a document by multiple individuals. This is a good feature to have when there is more than one person working on a specific project or to prevent another from making changes to completed work without consulting you about it first.

Key benefits:

  • Minimising data conflicts by turning on the require check out feature
  • Allowing for co-authoring of Microsoft Office documents when the require check out feature is turned off
  • Maintain data integrity.


In document libraries, the permissions recommended to be set up is to adhere to using SharePoint groups rather than granting users access directly to the library. This minimizes admin overhead from a permissions management perspective.

With this security model, users can be added/removed from the SharePoint group(s), which subsequently controls their access levels to the library, depending on the group’s assigned permission levels on the library. Without the need for folders, permissions can be set up directly on the document library (if the library is to have unique permissions different to the site level permissions), otherwise the library’s permissions can inherit from the defined permissions at the site level.

Key benefits:

  • Controlling who has access to specific content in document libraries using the SharePoint security model.


The All Documents document library view is the default view that typically always has all the metadata properties in the library visible. This view is to be used for doing bulk tagging on the documents in the library, post the bulk upload of files. It can also be considered as the administrative view of the library.

Key benefits:

  • Improved content find-ability
  • Reporting of content
  • Enhanced user productivity
  • Bulk tagging of documents in the library post bulk upload.


Alerts can be set up in a document library. They will inform you if someone is trying to change or delete your documents in some form or fashion. It will also keep you up to date on what has been added / changed in the document library through email notifications. The following are the available options to configure for the alert:

Key benefits:

  • Stay up to date with content updates in the document library
  • Enhance document library collaboration
  • Improve productivity.

Thanks and Happy SharePointing!!!

Courtesy: you can read the whole article here

TrickyCoder – Best practices for SharePoint a Document Management System – part 1

Companied who has adopted sharepoint as their document management system have some common issues for their document libraries, particularly in the case where a best practice is not followed for the document libraries.

The common issues that are faced are:

  • Usability
  • Lengthy URLs exceeding the URL length limitation
  • Navigation
  • Cost
  • Large libraries exceeding the 5,000 item list view threshold limit
  • Cannot co-author Microsoft Office documents
  • Data save conflicts. Security
  • User experience
  • File duplication
  • 1 Lonely View
  • Cannot sort and filter
  • Lost documents
  • Change is hard

Most of the times companies ask us to migrate thier Network share files to the SharePoint Document library.

To fullu take advantage of the SharePoint, it is always advise to convert the file share system to sharepoint using the best practices.


Enable library versioning to ensure a complete version history is kept and maintained. This allows document changes to be tracked, and provides a mechanism to allow users to restore from previous versions if required and view details on past changes made.

Key benefits:

  • Store Major and/or Minor versions on documents in the library, providing the option for restoring previous versions if/when required
  • Track changes on documents.


To improve the performance of a large list or library, you can index a column. An index on a column enables SharePoint to quickly analyse the data in that column, even when working with thousands or millions of items. For a view to quickly filter through a large number of items, the filter must be applied to a column that is indexed.

Key benefits:

  • Indexed columns in document libraries bypasses the 5,000 items list view threshold limit
  • Improved performance and helps manage large libraries.


Document libraries must have a logical name to make the document management solution intuitive to use and ensure content is uploaded into the correct location. This would improve user adoption and collaboration.

File naming conventions are recommended to be named in a logical manner and short to ensure URL length limits are adhered to. It is highly recommended to not use any special characters in folder names, file names and also in document library names. Special characters such as ampersand, are not to be used. Always use alpha and numeric characters only.

Key benefits:

  • Logical naming of document libraries and file names improves navigation and makes the system more intuitive
  • Shorter and more user friendly URLs and no special characters used ensures continual system availability and functionality with improved usability.


To avoid hours of adding tags to bulk uploads, using one type of content per library can save time. This means organizing content distributed across different libraries can aid in reducing time required to tag documents in their corresponding libraries.

What are the benefits of implementing this best practice?

Key benefits:

  • Structure document libraries to store individual content types, shortening the time required to bulk tag documents
  • Improves content organisation and find-ability.


Do not use folders to store content in document libraries because this can cause issues such as users misfiling documents, documents getting lost in nested folders, and it’s more time consuming to navigate around document libraries to locate content.

Tagging is preferable because it is more flexible. It also means you can view items by different classifications, which enriches the functionality of your library. Metadata provides the ability to view the list of files in the document library in different ways that allows you to find content quicker and also produces quality reports that is virtually impossible using folder structures.

Key benefits:

  • Better organisation of content
  • Ability to filter and group content using metadata
  • Provide useful reporting of content in document libraries
  • Improved content find-ability
  • Eliminates chances of documents getting lost in nested folders
  • Minimises chances of content getting misfiled.

For more of the best practice ideas visit the next post.

« Older posts

© 2023

Theme by Anders NorenUp ↑