Visual Studio integration

   —   
We are not only busy with developing new version but also with preparing new concepts and feature specifications for the version which will come after that. If you don't want to edit the layouts, CSS, etc. in textboxes anymore, read further, you will be pretty excited ...
Once again, I am coming with new information for you. You probably already know that we visited Microsoft developer's conference about Visual Studio integration and that we are one of not many members of Microsoft Visual Studio Integration Program partners so we stayed for a following three days to get more information than standard programmers get.

I must say we are under NDA about all new features and marketing so don't expect here any specific information that is currently not public and please don't ask me about the details, because I cannot tell you anyway. This article is more about what we are about to do with this knowledge and what can you expect from us in the future. It will be similar like my other posts, giving you the reasons why what we do is good for you and why it was wise to choose Kentico CMS over other CMS solutions.

So, what have we learned?

There were many topics regarding the Visual Studio extensibility on the conference, actually, there were two main threads from morning to late afternoon with many talks. We were focusing mainly on editor focused topics to get as much information as we could, learning how VS IDE works, how to communicate with it properly and how to bind our code to its structure and controls, and how to deploy packages. I must say that the basic concept of VS integration is very well done, Microsoft developers did a really great job and all the interfaces are carefully prepared. Unfortunately you cannot find a lot of the most important information on the internet, that is why we needed to get these directly from the source.

New Visual Studio features

The new Visual Studio focuses on the extensibility more than previous versions and brings many improvements which are very promising. Its release and other relevant things will be similar to release of Visual Studio 2008, I cannot tell you any details here but most of the developers who know current version are very familiar with this. I can tell you that there won't be anything groundbreaking for you, web developers, they are mostly improving current functionality. However, there will be some new features which advanced users may like. As usually, the new version will bring much better performance than the previous one. I am not sure what information is currently publicly available but all the necessary information should be available when the CTP version is released. Enough about VS now.

What can you expect?

Currently, we have just simple preview of our Kentico CMS Designer package (a.k.a. "Edit all virtual objects from Visual Studio and be happy"). With all new knowledge we will integrate this package further, allowing you to see the objects directly in your solution. We haven't decided yet if the package will be connected to the web site database directly or through the web service, and the architecture may change a little bit so I will not describe it here. What matters to you is what are the features you may expect with this new package, which would be:
  • Automatic inclusion of the virtual objects to your Solution structure
  • The ability to edit the site CSS stylesheet from Visual Studio, with CSS Intellisense
  • The ability to edit all ASPX code (such as all layouts, transformations, etc.) from Visual Studio with standard Intellisense
  • Intellisense for our libraries and methods when editing the ASPX code
  • The ability to edit SQL queries with Visual Studio query editor
  • Automatic update to the project database when you save the code, just like it was a normal, physical file
  • Opening the objects in Visual Studio directly from the administration interface
Here is our current preview:



It is far from the solution integration but it works at the moment, it is just technology preview to see how we are able to integrate.

Will you need Visual Studio license?

The VS packages can be build either with integrated (in Visual Studio) or isolated (just with Visual Studio framework) mode, so even for those who don't have a Visual Studio license, we will be able to provide a solution which will work without license. Isolated mode uses the VS Shell interface and supports web development. We are planning to implement both if possible. Unfortunately the Shell (non-licensed) version does not support C# and VB languages, so the ones of you who won't have Visual Studio will have only ASPX Intellisense but not the C# / VB one.

When?

I am pretty sure that you would like to know when this all will be available. As usual, we are very busy, so the exact time plan wasn't created yet, but we assume we could release the integration package in about 6 months from now. Watch our roadmap, it should be there as soon as we decide that the package can be in the next version. For now, we must first finish our new community features.

Well, see you at my next post ...

M.H.
Share this article on   LinkedIn

Martin Hejtmanek

Hi, I am the CTO of Kentico and I will be constantly providing you the information about current development process and other interesting technical things you might want to know about Kentico.

Comments

random0xff commented on

Ok, sounds good. I look forward to that!

Martin Hejtmanek commented on

Yes, exactly, that would be just editing of the object which cannot currently be edited without check-out/in to the filesystem. Versioning of objects (templates and other) is planned for the next version at the end of this year (not 4.1) so you will be able match your source control version to the database state version.

random0xff commented on

Ow man, that looks great. And it is really unique for Kentico if you can do this. I am dedicated to ASPX template development, and one of the things I am missing right now, is that if you develop a template in VS, you still have to go into the CMS to add the template. Now when I commit my template to the source control repository, there is no way to also commit the database state, except by exporting the site.

Now I think the example you have given in this blogpost is one where everything is still in the CMS database, but you edit it in VS. So, it's not like ASPX templates, it's almost like automated check-out/check-in, right? So this feature is not really for ASPX developers, is that correct?

Martin Hejtmanek commented on

Unfortunately the licence policy of VS integration package has not been discussed yet. So honestly, I don't know ... it will probably depend on the amount of work this will consume

D P commented on

This is the first time I have heard of Kentico CMS system. I am looking forward to seeing the Visual Studio Integration. Will there be a Free Edition that will integrate with Visual Studio?

Darren commented on

This is brilliant, I'm really looking forward to it! Keep up the great work!