Jean Paul's Blog

There are 2 types of People in the World, One who Likes SharePoint and..

  • Microsoft MVP

  • MindCracker MVP

  • CodeProject MVP

  • eBook on SharePoint 2010

  • eBook on Design Patterns

  • eBook on Windows Azure

  • NLayers Framework @ CodePlex

  • MSDN Forums

  • .Net vs. Java

    Due to Public Demand

Archive for November, 2014

Resource Request – Content Type Example

Posted by Jean Paul on November 30, 2014

In this article I would like to share a real-life scenario of using content types.

Resource Request

You are working as an IT Support Person.  The company employees need to raise various resource requests like:

  • Computer
  • Virtual Machine
  • Tablet

You need to also capture the configuration information from them, like:

  • Computer – CPU Cores, RAM, HDD Size, HDD Type, Users, Admin Users etc.
  • Virtual Machine – Domain, All Computer parameters
  • Tablet – Model, Storage etc.

Additionally, all these should be tracked along with following fields:

  • Status – Open, In Progress, Closed
  • Requester
  • Resolver
  • Created Date
  • Resolved Date

Content Type

The above scenario is good for content type.  We can also apply content type inheritance here.


Following is the list.


Now go to the list > List Settings > Advanced Settings > Allow management of content types > Enable


Now go to Site Settings > Site content types


Following is the Computer content type inheriting from base content type.


Following is the Virtual Machine content type inheriting from Computer.


Following is the Tablet content type inheriting from base content type.


Associate Content Types

Now go to the List > List Settings > Advanced Settings > Add Content Types


Do not forget to remove the default Item content type from the list.

(Click on Item content type and choose Delete option)

Add New Item

Now try adding a new item to our Resource Request list.


You are ready now to expose the list to employees.  They can generate new resource requests in a much easier way & the IT Support won’t miss any important parameters regarding the resource.


Please note that unlike document libraries, the content type drop-down won’t appear in the new form Or along with the Create link.  You need to do certain JS or CSS customization to enable this.



In this article we have explored how to use content types in a Resource Request scenario.  Adding workflows / alerts would notify the IT Support people immediately.

Posted in SharePoint, SharePoint 2013 | Tagged: , , | Leave a Comment »

SharePoint as a Document Management System

Posted by Jean Paul on November 25, 2014

I had a requirement of migrating Lotus Notes to SharePoint.  The main aspect of requirement was “Document Management”.

Following are the selling points of SharePoint against Lotus Notes.

User Interface

SharePoint provides an excellent user interface to add/update/delete/tag/search documents.


SharePoint provides document version.

Records Center

The records centers template provides quick solution to making historical records of documents.

Drag & Drop

Bulk document upload is supported in SharePoint 2013 using the drag & drop feature.


Explorer View

SharePoint supports WebDAV to enable Explorer View.  This helps people to operate in a much-known explorer fashion.


Shredded Storage

If your client document management involves heavy traffic, reduction in bandwidth usage & faster-updating can be achieved through Shredded Storage.

Remote BLOB Storage

SharePoint supports storing document content in database or external file systems.  This will relax the site collection size limits.

Content Indexing & Filters

By default SharePoint supports content-indexing of popular Office documents – Word, Excel, PowerPoint etc.  For custom filtering we can purchase & install 3rd party filters for PDF etc.


Following are the parameters we need to capture for the document migration.

  1. Number of documents in store
  2. Type of documents (word, excel, powerpoint, pdf , etc)
  3. Average size of documents
  4. Metadata requirement
  5. Content Type / Site Column requirement
  6. Version requirement
  7. Expected growth in an year
  8. Search requirement (full-text search, metadata-based)
  9. Records requirement (making document as a historical evidence)
  10. Site Template (blank, team site)
  11. Workflows requirement (approval, signature etc.)
  12. Document Governance (folders, metadata, mandatory fields)
  13. Type of user-authentication
  14. Permission roles, groups
  15. Preserving of system-values (created by, created date)
  16. Life cycle of a document (auto-archive, auto-delete, recycle-bin usage etc.)
  17. Policies around documents



In this post I have highlighted features of SharePoint as a Document Management System.

Posted in SharePoint, SharePoint 2013 | Tagged: , , , | Leave a Comment »

When not to go for SharePoint Online?

Posted by Jean Paul on November 22, 2014

When not to go for SharePoint Online?

In this article I would like to share the scenarios where choose not to go for SharePoint Online.

Legal documents

If the client do not wanted to expose their documents over Internet, then obviously SharePoint Online won’t be a right fit for them.

Bandwidth Limits

If your client has bandwidth limits & policies coupled with big-sized document management, then going Online is not a good option.

(Workspace/Shredded Storage are alternative options though)

Offline Accessibility

If your client prefers more offline availability of the documents with easier Sync, then On-Premise would provide better flexibility.

(Groove is an alternative option though)

Connection Speed

On-Premise works better than Online if connection speed is a bottleneck.

Farm Solutions

SharePoint Online does not allow Full Trust/Farm Solutions.  If your project requires that old solutions to be migrated, then going Online would be restrictive.

(Microsoft Support provides a separate path for deploying Farm Solutions but will be process-oriented and you might get delayed with deployment & instrumentation)

Heavy Customization

If heavy customization & flexibility on master pages required then going Online can be restrictive.

The above scenarios restrict us to prescribe SharePoint On-Premise with/without a public-hosting.



In this article we have explored the cases for not going with SharePoint Online.

Posted in SharePoint, SharePoint 2013 | Tagged: , , | Leave a Comment »

Provider Hosted Apps

Posted by Jean Paul on November 20, 2014

Provider Hosted App is hosted outside the SharePoint environment.  This means you will be having a SharePoint environment and an App Environment.

The App Environment can be hosted in IIS using ASP.NET.


Following are the advantages of Provider Hosted Apps:

  1. SharePoint Server is freed from app-execution resources
  2. SharePoint Server is protected from app-crash

App Web & Remote Web

App Web is the SharePoint site created while installing an App.

Remote Web is the Provider Hosted site created to host the App.



The good thing is that we can use C#.Net as the development language.

Server Object Model

As the code is executed in a remote web where the SharePoint binaries are not available we cannot use Server Object Model.

Client Side Object Model

We can use the CSOM using C#.Net. 

Posted in SharePoint, SharePoint 2013 | Tagged: , , | Leave a Comment »

Auto-Hosted Apps Deprecated

Posted by Jean Paul on November 18, 2014

The SharePoint development evolution is continuing.  Auto-Hosted Apps are discontinued since June 30.  Existing Apps will be supported but creation of new apps in SharePoint 2013 will be discontinued.


The Autohosted Apps were a Preview option and the Office team might come back in future with Autohosted apps with enhanced future.

Options Remaining

Now the remaining options for custom development are:

  1. SharePoint Hosted Apps
  2. Provider Hosted Apps


Autohosted apps in Azure can be migrated to Provider hosted apps.  Please find the link in reference section.


Posted in Uncategorized | Leave a Comment »

70-488 Content Type Inheritance

Posted by Jean Paul on November 17, 2014

In this article we can explore Content Type Inheritance, its advantages and example.

Content Type Inheritance

Content Type Inheritance allows creation of new content type from an existing one. This allows reusing of existing content type & metadata columns.


Following are the advantages of Content Type Inheritance:

1. Reusability

2. Maintainability

Base Content Type

The Base Content Type is System of ID 0x. All the content types will be inheriting from System as the ultimate parent.


Creating an Inherited Content Type

Now we can try creating an inherited content type. In this expense submission scenario, we are trying to create a content type that inherits from Document. We will be adding additional metadata columns for capturing Amount.

Choose Site Settings > Site content types page > Create option.


Enter Name for the content type & Select the Parent Content Type as Document. Click OK button to continue. In the appearing page choose Add from new site column.


Enter the name of the column as Amount and type as Currency.


Click OK button to continue. Now you can attach the content type to a document library.

Create a Document Library and choose Library Settings > Advanced Settings > Allow management of content types > Yes > Click Ok


Again choose Library Settings page & you should be able to see the content types section. Choose the following option.


In the page choose Custom Content Types and add our Expense Content Type to the add box. Click OK button to continue.


Now try to add a new document to the library. Choose the Expense Content Type from the drop down and you will be able to see the Amount column as shown below.




In this article we have explored content type inheritance, advantages and example.

Posted in SharePoint, SharePoint 2013 | Tagged: , , , | Leave a Comment »

Search Book

Posted by Jean Paul on November 13, 2014

Working on Search Book creation.. Active Posts will be delayed.

Posted in Uncategorized | Leave a Comment »

Visual Studio 2015 Preview

Posted by Jean Paul on November 12, 2014

Visual Studio 2015 Preview is available for download from location below:


Cross Platform Development items were interesting to see.


Unlike the other versions, Visual Studio 2015 is prompting for Microsoft Account.


It prompted to choose the Development Settings.


Finally the Main Screen.


New Project have more items.


Posted in Uncategorized | Tagged: | Leave a Comment »

Error: Could not load file or assembly ‘Microsoft.IdentityModel.Extensions, Version=

Posted by Jean Paul on November 8, 2014

While creating a new site collection in SharePoint 2013 I received the following error:

Could not load file or assembly ‘Microsoft.IdentityModel.Extensions, Version=


Following Fix worked for me:

  1. Install Windows Identity Extensions for SharePoint 2013 LINK
  2. Restart the Server

I tried creating the site collection again & it worked like a charm.


Posted in Uncategorized | Leave a Comment »

Identity and Access Tool – Visual Studio Extensions

Posted by Jean Paul on November 3, 2014

For writing claims aware web applications in Visual Studio 2012 we required the following extension.


Download using link below:

The extension adds menu item to Web & WCF Applications.  We can use it to connect to a custom STS provider.  All the changes selected will be added to web.config file.

After Installation

Once installed, you can create a new web application & right click on the Solution Explorer to access the context menu.


Click on the Identity and Access menu item.  You will get the following dialog box for configuring Identity.


Posted in Uncategorized | Leave a Comment »