Wednesday, April 18, 2012

SharePoint Interview questions


1.            What are the base class of webpart and differences between these base classes and what are the inherit benefits of using one over another?
2.            What is the GAC?
3.            What is strong naming (signing) a WebPart assembly file mean?
4.            What are safe controls, and what type of information, is placed in that element in a SharePoint web.config file?
5.            What is the CreateChildControls() method? How can you use it to do something simple like displaying a Label control?
6.            What does the RenderContents method do in an ASP.NET 2.0 WebPart?
7.            What is the WebPartManager sealed class? What is its purpose?
8.            What is a SPSite and SPWeb object, and what is the difference between each of the objects?
9.            What does a SPWebApplication object represent?
10.          How do you connect (reference) to a SharePoint list, and how do you insert a new List Item?
11.          What is CAML, and why would you use it?
12.          What is impersonation, and when would you use impersonation?
13.          What are WebPart properties, and what are some of the attributes you see when declaring WebPart properties in code?
14.          Why are properties important in WebPart development, and how have you exploited them in past development projects? What must each custom property have?
15.          What is a SharePoint Solution File? How does it differ from WebPart .cab files in legacy development? What does it contain?
16.          What is a SharePoint Feature? What files are used to define a feature?
17.          What types of SharePoint assets can be deployed with a SharePoint feature?
18.          What are event receivers?
19.          When would you use an event receiver?
20.          What base class do event receivers inherit from?
21.          What is a content type?
22.          Can a content type have receivers associated with it?
23.          Can a list definition be derived from a custom content type?
24.          What is a SharePoint site definition and Site Template?


1.       What is SharePoint
2.       What is master page
3.       What is page layout
4.       What is site columns & content types & external content types
5.       What is custom field type
6.       Diff between site template and site definition
7.       Diff between app domain & app pool
8.        What is strong naming
9.       Application page vs Site page
10.   What is ghosting & un-ghosting
11.   What is SP virtual path provider
12.   Http module vs http handler
13.   Authentication mechanism (difference between authentication & authorization)
14.   What is impersonation
15.   What is ADFS & what is claim authentication
16.   Difference between user control and custom control
17.   What are web parts? Types of web parts ? what is visual web parts?
18.   Connected web parts
19.   What is client object model, how it differs from web services
20.   Difference between web.config and machine.config
21.   Difference between process & thread
22.   Difference between abstraction vs interface
23.   Difference between factory vs abstract factory
24.   Difference between static class vs singleton pattern
25.   What is connector framework
26.   What is BCS
27.   What’s is feature? How to upgrade feature
28.   Events in SharePoint? What is difference between synchronous and asynchronous events
29.   Difference between service application vs SSP
30.   What is sandbox solutions
31.   Whats is LINQ
32.   What is spmetal utility
33.   SharePoint Infrastructure capacity planning and sizing
34.   Difference between SP 2007 and SP 2010
35.   Large list handling in SharePoint
36.   What is list throttling
37.   What is In place record management
38.   What is document management
39.   Difference between document set vs folder
40.   What is fast search



1.       What is master page
Master pages and page layouts dictate the overall look and feel of your SharePoint site. Master pages contain controls that are shared across multiple page layouts, such as navigation, search, or language-preference for multilingual sites. Page layouts contain field controls and Web Parts
By using master pages, you can provide a consistent look and feel for your site. You can use master pages to position items that must be shared by all pages, such as navigational controls, company logos, and copyright notices. Within master pages, you can use user controls (.ascx controls), Web server controls, and Web Parts.

2.       What is page layout (http://msdn.microsoft.com/en-us/library/ms544928.aspx)
A page layout is a template that is used in conjunction with a master page to control the look, feel, and content of a page. Each page layout has an associated content type that determines the kind of content that can be stored on pages based on that page layout.
Each content type contains columns that define content that can appear on a page and metadata associated with the page. A content type, therefore, contains a column for each of these data elements that are present on the page. When you create a content type, you add column templates to it for each field. Column templates determine the default field control that is associated with the column, and what kind of content the field can contain, such as a single line of text, a hyperlink, or a picture.
Content on a page is stored as SharePoint list items in the Pages document library. When users view or edit the page, content is pulled from the SharePoint list and displayed in field controls. When you create a page layout, you add field controls by using an editor such as Microsoft SharePoint Designer 2010 or by manually adding the markup.

3.       What is site columns & content types & external content types (http://msdn.microsoft.com/en-us/library/ms472236.aspx)

A content type is a reusable collection of metadata (columns), workflow, behavior, and other settings for a category of items or documents in a Microsoft SharePoint Foundation 2010 list or document library. Content types enable you to manage the settings for a category of information in a centralized, reusable way.



4.       What is custom field type (http://msdn.microsoft.com/en-us/library/ms446361.aspx)

As you store your business information in SharePoint Foundation, you may encounter instances where your important business data does not conform to the field types included in SharePoint Foundation, or situations where you want to further customize those general field types. SharePoint Foundation enables you to create custom field types. These custom fields can include custom data validation and custom field rendering. You can also customize the way that variable properties of your custom field types are processed and rendered when users set property variables and create new columns that are based on your custom field type.

5.       Diff between site template and site definition
Site Definitions
A site definition defines a unique type of SharePoint site. Natively installed definitions in Windows SharePoint Services include the STS type, which defines the Team Site, Blank Site, and Document Workspace configurations, and the MPS type, which defines the Basic Meeting Workspace, Blank Meeting Workspace, Decision Meeting Workspace, Social Meeting Workspace, and Multipage Meeting Workspace configurations. Each site definition emerges through a combination of multiple files that are placed in the Local_Drive:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\60\ subdirectories on one or more front-end Web servers during installation of Windows SharePoint Services. Site definition files include core schema XML files, .aspx pages, document template files (.dot, .htm, and so on), and content files (.gif, .doc, and so on).

6.       Diff between app domain & app pool
7.       What is strong naming
8.       Application page vs Site page

9.       What is ghosting & un-ghosting

Ghosting (http://msdn.microsoft.com/en-us/library/dd586633(v=office.11).aspx)

Site definition files are cached in memory on the server at process startup of Microsoft Internet Information Services (IIS), which improves scalability and performance by reducing unnecessary data storage or retrieval, and by allowing uncustomized pages to be reused across sites. The information contained in these files is pulled from the cache at run time. Pages and list schemas are read from the site definition files but appear to be actual files within a site, which is why these files are referred to as "ghosted." Ghosted pages are therefore pages whose actual content does not reside in the database but on disk, although a row for each page can be found in the database containing a column value that points to the page source in the file system. New Web Part Pages are also ghosted.
When site pages are customized, excluding browser-based customizations such as modifications to Web Parts, the pages become "unghosted" and their contents are stored in the database. Windows SharePoint Services does not natively provide a means for "re-ghosting" pages. In addition, uploaded .aspx files are considered unghosted automatically. The contents of unghosted pages are routed through the Safe Mode parser, which prevents server-side code from executing, and which depends entirely on the Safe Controls list specified in the web.config file of the wwwroot directory to determine which controls can be rendered at run time.

Thursday, April 12, 2012

The user or users have been added successfully, but there was an error in sending the e-mail message. The server may not be set up correctly to send e-mail. To verify that e-mail is configured correctly, contact your server administrator.

The user or users have been added successfully, but there was an error in sending the e-mail message. The server may not be set up correctly to send e-mail. To verify that e-mail is configured correctly, contact your server administrator.

You may come accorss this error while working with MOSS . I came accross this error while adding user to SharePoint group.

You may check outgoing email setting from Central admin , however it's not the issue . As you are already using Sp site and suddenly you face this issue.

To resolve this issue you will have register your server to SMTP server list

Friday, April 6, 2012

The user does not exist or is not unique

While working on Unit testing after updating prod environment I use to come accross this issue.


This can be resolve using service account directory path settings.

Use cammand check your existing service account settings :

stsadm -o getsiteuseraccountdirectorypath -url http://mysite/

To remove service account directory path settings use below command. Replace domain with your actual domain name

stsadm -o setsiteuseraccountdirectorypath -path "" -url http://mysite/

After removing these settings you should be able to add new user.


To set service account directory path settings use below command. Replace domain with your actual domain name
stsadm -o setsiteuseraccountdirectorypath -path "ou=domain,dc=domain,dc=com" -url http://mysite/

More info http://mrhodes.net/2009/10/28/the-user-does-not-exist-or-is-not-unique-8/