locked
Microsoft Dynamics CRM (How do they make this?) RRS feed

  • Question

  • I am curious  on what programming software is used to create a software similar to Microsoft Dynamics CRM?

    I use Visual Studio 2008 Pro for my ASP.net w/AJAX toolkit programing but this seems to be something different.

    Is there a special Project type in VS that I dont know of?  This type of Web system seems to be more powerful then your traditional ASP.net webpage. 

    If someone could weigh in on this and maybe point me in the right direction that would be great.

    Thanks in advance.


    Tuesday, October 16, 2012 8:11 PM

Answers

  • Hi,

    Dynamics CRM is built with C#, ASP.NET and the Microsoft AJAX library as well, but it also has *considerable* custom code that is written specifically for Dynamics CRM. It used to have some unmanaged components but they have been gradually re-written as managed code since the CRM3.0. 

    Dynamics CRM is not an application framework in the same sense as MVC, but rather it is an framework that you extend by first installing the base product and then adding new entities/plugins/form customisations etc.

    The only Visual Studio Templates are for these types of extensions - so you cannot deploy using this framework without first licensing users/server on the base product.

    You can find out more about the VS projects for Dynamics CRM here:  http://msdn.microsoft.com/en-us/library/hh372957.aspx

    You must weigh up the advantages that Dynamics CRM brings to you against the cost of the licenses compared to a completely bespoke application. If you were that way inclined, you could write a similar application in just ASP.NET/AJAX - but this would be considerable development effort and a very high total cost of ownership.

    hth,

    Scott


    Scott Durow
    Read my blog: www.develop1.net/public     Follow Me on Twitter
    If this post answers your question, please click "Mark As Answer" on the post and "Mark as Helpful"

    Wednesday, October 17, 2012 7:31 AM
    Answerer
  • One thing to add to Scott's excellent summary above is that CRM also includes components that interact with other Microsoft software in specific ways:

    • Outlook. The CRM client for Outlook installs as an Outlook COM Addin. There is a VS project template for this in VSTO. The offline client also utilises SQL Express
    • Reporting Services. The CRM RS extensions include a Data Processing Extension to interact with Reporting Services. There are no templates for this, but the SQL Books Online documentation is adequate for developing RS extension

    Microsoft CRM MVP - http://mscrmuk.blogspot.com/ http://www.excitation.co.uk

    Wednesday, October 17, 2012 8:18 AM
    Moderator

All replies

  • Hi,

    Dynamics CRM is built with C#, ASP.NET and the Microsoft AJAX library as well, but it also has *considerable* custom code that is written specifically for Dynamics CRM. It used to have some unmanaged components but they have been gradually re-written as managed code since the CRM3.0. 

    Dynamics CRM is not an application framework in the same sense as MVC, but rather it is an framework that you extend by first installing the base product and then adding new entities/plugins/form customisations etc.

    The only Visual Studio Templates are for these types of extensions - so you cannot deploy using this framework without first licensing users/server on the base product.

    You can find out more about the VS projects for Dynamics CRM here:  http://msdn.microsoft.com/en-us/library/hh372957.aspx

    You must weigh up the advantages that Dynamics CRM brings to you against the cost of the licenses compared to a completely bespoke application. If you were that way inclined, you could write a similar application in just ASP.NET/AJAX - but this would be considerable development effort and a very high total cost of ownership.

    hth,

    Scott


    Scott Durow
    Read my blog: www.develop1.net/public     Follow Me on Twitter
    If this post answers your question, please click "Mark As Answer" on the post and "Mark as Helpful"

    Wednesday, October 17, 2012 7:31 AM
    Answerer
  • One thing to add to Scott's excellent summary above is that CRM also includes components that interact with other Microsoft software in specific ways:

    • Outlook. The CRM client for Outlook installs as an Outlook COM Addin. There is a VS project template for this in VSTO. The offline client also utilises SQL Express
    • Reporting Services. The CRM RS extensions include a Data Processing Extension to interact with Reporting Services. There are no templates for this, but the SQL Books Online documentation is adequate for developing RS extension

    Microsoft CRM MVP - http://mscrmuk.blogspot.com/ http://www.excitation.co.uk

    Wednesday, October 17, 2012 8:18 AM
    Moderator
  • Thank you guys for the wonderful responses.  I was interested in creating a website/Web software that has that style of user interface and controls.  I wasn't sure if there was a set a special controls MS had to achieve this or if they wrote their own controls or if they even used a 3rd party for the controls.  I have no desire is creating a website that interacts with other MS products, just my SQL server database.

    I guess I was looking for something different that your standard internet web application.  I am more interested in having that style of GUI on my webpage. If you know of any sort of MS controls that might get me started that would be great. I have looked at buying DevXpress toolkits. It seems MS/AJAX out of the box toolkits don't seem to have the look and functionality I had in mind.

    Thanks for the explanation.

    Wednesday, October 17, 2012 8:53 PM
  • Hi,

    There are no Microsoft tools available at the moment to create the same User interface style as Dynamics CRM - third party providers like DevXpress and Telerik are you best option.

    Have you seen http://www.kendoui.com/

    hth,

    Scott


    Scott Durow
    Read my blog: www.develop1.net/public     Follow Me on Twitter
    If this post answers your question, please click "Mark As Answer" on the post and "Mark as Helpful"

    Wednesday, October 17, 2012 8:57 PM
    Answerer
  • Re the web controls, a fundamental difference between Dynamics CRM and a typcial ASP .Net web application is that most web applications will have static forms, with a designated set of controls laid out within an HTML structure at design time. Dynamics CRM builds the form dynamically, based on an form definition with an XML structure, and doesn't really have design-time controls.

    Ultimately, the controls are rendered as HTML (I'm not sure if CRM 2011 still uses htc files as well), and most of them are based on the standard HTML INPUT controls (exceptions are DateTime, and Lookups) with css for the look and feel (and client script to handle data operations). The look and feel should be relatively easy to replicate using the MS css, though I don't think there are any tools to help with this


    Microsoft CRM MVP - http://mscrmuk.blogspot.com/ http://www.excitation.co.uk

    Thursday, October 18, 2012 4:20 AM
    Moderator