Tuesday, February 8, 2011

Sharepoint 2010 Interview Questions ( may also apply for MOSS 2007 )

How can I check to see if a slow loading SharePoint page has closed webparts? The way to check for closed webparts is ?contents=1 at the end of the url

Example: http://www.sharepointjoel.com/default.aspx?contents=1
Brings up the webpart maintenance page and I can see the categories and a content editor webpart that are closed. These are affecting the performance of the page negatively and providing little value. Now if I at some point want to re-add the categories web part, I should not delete it. As well, a content editor web part will need to be recreated. There is no recycle bin for restoring deleted content in a content editor web part.
Why should you not use Render()? [ only use RenderContents() or use the more OO approach and implement CreateChildControls() ]

A. Basically the WPSC provides developers with a SharePoint specific client-side DOM that allows developers to listen for events, interact with Web Parts and even set properties... all through script on the client. The WPSC is implemented using a bunch of client-side code. You can see a snippet of it if you look at the source of a SharePoint page.
When SharePoint renders the page, it adds a unique ID to the HTML <TABLE> as well as a unique ID to the <DIV>... developers can use these ID's to get to the Web Part via client-side code.
When you use RenderContents() or CreateChildControls(), the rendered markup produced by those methods is put inside the <DIV>. If you override Render(), you are replacing the entire <TABLE>! Thus, by replacing the entire table, you are breaking the WPSC... the whole SharePoint specific DOM.
What are the types of authentication available for Sharepoint 2010 ?
  • Claims
  • Windows
  • Forms-based authentication
Ref : http://technet.microsoft.com/en-us/library/cc262350(office.14).aspx
What is claims based authentication ?

Claims is a new authentication method that SharePoint 2010 can utilize. This allows a single authentication store for multiple types of authentication (Windows NTLM, SQL FBA, LDAP, etc) which allows all of these types of authentication to access SharePoint under a single URL.
Claims creates a SAML token based on the sign-in, that contains the user’s identity.
How do we use the claims identity outside of SharePoint?
  • LOB systems
  • External partner services
  • Separate SharePoint farms
What is LINQ to Sharepoint ?

  • LINQ is a feature of the programming languages C# 3.0 and Visual Basic .NET

  • LINQ adds, to each of the languages, a SQL-like syntax and vocabulary for querying data sources.

  • LINQ to Sharepoint allows developers to use SQL-like syntax to query Lists and Libraries in Sharepoint.

  • LINQ to Sharepoint internally converts the LINQ query to a CAML query to fetch records

  • Advantage : Strongly typed access to the entities of the list.

  • Disadvantage : If the new columns are added or its datatype changed, the datacontext class used by LINQ is no longer valid and may break the code

  • Name the tool used to create DataContent classes for use in LINQ queries?
    What are the advantages and disadvantages of LINQ to Sharepoint ?
    • Intellisense
    • Strongly typed access to the entities of the list
    • Faster development
    • Simplify complex queries
    • If the new columns are added or its datatype changed, the datacontext class used by LINQ is no longer valid and may break the code
    • Extra layer to the actual CAML query

    In Sharepoint 2010, at what levels can a workflow be activated ? ( Alt Q: What is the additional scope a workflow be activated in Sharepoint 2010 ) ?
    Can a workflow created in Sharepoint Designer be edited in Visual Studio ?
    Can MS Visio be used to create a Sharepoint workflow ?
    MS Visio cannot be used to create the Sharepoint workflow itself, but can be used for workflow visualization. What this means is that, the flow diagram designed in Visio can be imported in Sharepoint Designer where all the functionality can be added and deployed to Sharepoint.
    To use Visio 2010 for workflow visualization, you must be running the Enterprise version of SharePoint Server 2010 and Visio 2010 Premium.
    Whats new in Shared Service Provider (SSP ) in Sharepoint 2010 ? ( Alt Q: What is "Service Application" ? )
    “Service Application” or “Service App” is a concept in Sharepoint 2010, where SSP Services are split out into separate services.
    What is replaced :
    • Profiles, Audiences = People Service App
    • Search = Search Service App
    • Excel = Excel Service App
    Whats new :
    • Project Server = Project Server App
    • Visio Services = Visio Service App
    Advantages :
    • Web applications can be configured to only use a subset of the deployed services.
    • You can deploy multiple instances of the same service in a farm by giving the new service instances unique names.
    • You can share services across multiple web applications in a farm.

    1 comment:

    1. there are more linq to sharepoint disadvantages:

      1. CAML filters the results in the database but LINQ returns everything and filters in memory
      2. SPMetal by default does not generate properties for fields like CreatedDate, CreatedBy, it also has some problems with metadatacolumns and people picker columns.

      LINQ in sharepoint is just not worth it.