Tuesday, April 30, 2013

MVC Interview questions and answers

Sunday, April 28, 2013

Friday, April 12, 2013

Difference between CRM 2011 Plug-In and Workflow

Difference between CRM 2011 Plug-In and Workflow

Criteria
Plug-in
Workflow
Execution before or after the core platform operation (Create, Update, Delete, and so on)
Executes immediately before or after the core operation (synchronous).Can also be queued to execute after the core operation (asynchronous).
Queued to execute after the core operation (always asynchronous).
Performance impact on the server
Synchronous plug-ins can increase the platform’s response time because they are part of the main platform processing.Asynchronous plug-ins have less impact on server response time because the code is run in a different process.
Less impact on server response time because the code is run in a different process.
Security restrictions
To register a plug-in with the platform requires a System Admin or System Customizer security role and membership in the Deployment Administrator group.
Users can interactively create workflows in the Web application.However, to register a custom workflow activity, the deploying user must have the same security roles as those required for registering plug-ins.
Microsoft Dynamics CRM version (SKU) support
Supported in Microsoft Dynamics CRM Online when registered in the sandbox. May be supported in partner-hosted installations at the discretion of the partner.
Workflows without custom workflow activities are supported by all product versions. Custom workflow activities are not supported on Microsoft Dynamics CRM Online.
Length of processing time
A plug-in registered for synchronous or asynchronous execution is restricted to complete its execution within a 2 minute time limit. 
Works well for either short or long processes.
Works when the Microsoft Dynamics CRM for Outlook client is offline
Both online and offline are supported.
Workflows do not execute when offline.
Process and data persistence
Plug-ins execute to completion. Plug-ins must be written to be stateless where no in-memory data is persisted.
Workflows can be paused, postponed, canceled, and resumed through SDK calls or by the user through the Web application. The state of the workflow is automatically saved before it is paused or postponed.
Impersonation
Plug-ins can perform data operations on behalf of another system user.
Workflows cannot use impersonation.