Thursday, February 9, 2017

Sitecore Interview Questions for 4+ year exp guys

1. What are sticky and non-sticky sessions?
Sticky session:
     What: A method used with Application Load Balancing, to achieve server-affinity.

     Why: If the load balancer is instructed to use sticky sessions, all of your interactions will happen with the same physical server, even though other servers are present. Thus, your session object will be the same throughout your entire interaction with this website.

* All your requests will be directed to the same physical web server.            
* Only single session object will be there

Non Sticky session:
* In case of a non-sticky load balancer may choose any webserver to serve your requests.
* Session object for each server node

2. What is Areas in Sitecore Mvc?
What: MVC areas are choice for organizing and separating assets belonging to each tenant, or for breaking up a large single tenant project into multiple modules.
MVC Areas actually do far more than just organize your files into separate directories.  Runtime resolution of assets based on directory convention is also great, and support for this by Visual Studio IntelliSense is even better.

Why: Sitecore offers support for multiple tenants from a single running instance, but it does not provide process or file system isolation for assets developed for each tenant website

Where:  sitecore will by default registers all the areas in the initialize pipeline. You can register area in sitecore.mvc.config file
<mvc>
<areas>
<area type=”namespace.classname, assembly name”>
</area>

<excludeareas>
     <area type=”namespace.classname, assembly name” />
</excludeareas>
</areas>
          </mvc>
To determine the area for each rendering and layout view, Sitecore uses the ResolveArea processor early in the mvc.renderRendering pipeline

When invoking a rendering in code, for example: @Html.Sitecore().ViewRendering("Index", new { area = "MyArea" })

4. What is Helix and Habitat?
      Helix is a set of overall design principles and conventions for Sitecore development.

      Habitat is a real Sitecore project implemented on the Sitecore Experience Platform using   Helix. It is an example that allows developers to see how Helix is applied and lets developers experience a project based on these principles.
http://helix.sitecore.net/introduction/what-is-helix.html

5. How to Replace space and underscore with a dash (-) in the URL Sitecore?
    Go to sitecore.config file and add the below settings 
   <encodeNameReplacements>
    <replace mode="on" find=" " replaceWith="-" /> 
<replace mode="on" find="_" replaceWith="-"/>
 </encodeNameReplacements>

6. How to delete history of source code check-in? For example suppose say you have wrongly committed some configuration changes, how do you delete its check-in history? so that other person should not be able to see it in the history.

7. What is path Analyzer?

8. Why Federated Experience Manager?
    Click on this Link and go page number 259 to read.

8. How do you set up mongoDb? Does Sitecore 9 update1 support Mongodb for xDB.
    Sitecore 9 update1 doesn't support MongoDb or oracle db for xDB( it prefers SQL db), Sitecore has again started it supports to Mongodb in sitecore 9 update2 release.




.Net Interview Questions
1. Difference between Html.BeginForm() and Ajax.BeginForm()?

Ajax.BeginForm() creates a form that submits its values using an asynchronous ajax request. This allows a portion of the page to be update without requiring that the entire page be refreshed. Html.BeginForm() will use simple posting on page, it means your page will be refreshed when you post your form