Portable Class Library (PCL) in .NET

I was creating a Visual Studio project when I saw the template Portable Class Library. Sometime a while back I read about it but I was not able to recognize it. So, I searched online for more information on this and then got the concept clarified. Whatever I read and understood, I'll share with you.

Generally a class library is a collection of classes. The common functions are written in classes and grouped together that make a single component. This component can be used in any number of applications. Earlier we had web applications and standalone applications that support the same kind of components. But in today's world we have various kinds of applications, like web applications, Windows Phone, Silverlight and a variety of applications that are totally different from each other so the traditional class library component can't support the entire range. Therefore Microsoft developed a new project type that resolved this problem. A Portable Class Library is supported by many types of applications. We need to select the application type during the creation of the project.

There are many .Net components that were changed to implement this concept. A few of the components are:

  • MSCORLIB.DLL
  • System.Object
  • System.XML
  • System.ServiceModel



After selecting the template we need to select the applications types.



Features of PCL:

  • Supports the Model View View Model (MVVM) Pattern
  • Cross-Device Support

References: