locked
Upgrading and SilverLight dilemma RRS feed

  • General discussion

  • Dear all,

    I am in the midst of upgrading my development PC and plan to upgrade from VS2010 to VS2013. While I was researching around and planning my approach, I came across a number of points to have a dilemma on:

    1) My application is a LightSwitch Out-of-browser SilverLight desktop app. I read that from VS2012, LightSwitch uses oData and I read that there may be performance issues.  

    • Will my project, once upgraded, be using oData too?
    • Does this affect the performance of a my application?
    • Will I still be able to define and use my own RIA datasource?
    2) Regarding SilverLight and Microsoft's deafening silence about its future, I am lost about my next course of action. I certainly don't think a browser based application is suited for my client's usage. My development knowledge is limited, hence LightSwitch's ease in creating screens with all the client-server interactions taken cared met my needs when it was launched in 2010. 
    • May I ask your advice on whether I should be transitioning away from LS Silverlight platform?
    • If your answer was yes, what platform do you suggest I look into to develop desktop clients? 
    3) Lastly, 
    • Is it advisable to stick on with VS2010 for LightSwitch Silverlight development?
    Many many thanks in advance.
    • Changed type Angie Xu Monday, November 25, 2013 1:54 AM
    Thursday, November 14, 2013 4:19 AM

All replies

  • Hi Cte00

    I can't answer your technical questions but I can suggest something that I do which is to run VMWare player on my PC with two different Windows installations, one with VS 2012 and one with VS 2013, that way I can experiment with upgrading projects, extensions, plugins etc. without the worries.

    VMWare player is free and it's really easy to setup.

    Thursday, November 14, 2013 6:14 AM
  • Well, Chun Te and I already discussed this one, but at the risk of making myself unpopular with any Microsoft people reading, I'm going to post my comments here. Bear in mind that I'm not offering these as anything other than personal opinions, so others may disagree, and that's fine. I would be interested to hear from people who do.

    Anyway, to address the specific questions...

    1) Once you upgrade any Lightswitch project from VS2010 to any later version, it will use oData. As far as I know, VS2012/VS2013 don't use RIA services at all, unless you add them manually (which removes a large chunk of the RAD that we like about Lightswitch in the first place). This will definitely affect the performance, as oData uses a text-based protocol, so the data takes more space, and so more bandwidth than with RIA services, which binary-encode the data, making it smaller.

    Whether the performance hit is enough to be a problem for you is something that you'll only know by trying it. You can take a copy of your solution (DON'T do this on the main one!) and try upgrading it. Deploy it to a separate location from the main one and compare the performance.

    You can help matters a little, in that if you know how to tweak the settings in IIS, you can turn on compression for the site that holds the Lightswitch app, which will reduce the bandwidth required for data access. I don't think it will be quite as good as the RIA services version, but it might bring it back to a comparable level. I haven't tried this, so can only go on what I've heard from others.

    2) As far as vanilla Silverlight (ie, outside of Lightswitch) goes, I wouldn't start any new development in it, unless it was a project where I had a good feeling that the clients would be able to support it. For example, I recently started a 2-tier app for a local charity, and I know that this will only be used on a single machine at a time, so Silverlight isn't a problem, and Lightswitch in VS2010 was a good choice. If the clients will be wanting any browser-based access, then Silverlight is not a good choice, as it's not supported on mobile devices, which are becoming more and more common.

    Silverlight is not being developed any further, but it will remain supported on desktops for some years to come, so OOB apps will run fine. Therefore, any OOB-only apps can be developed in Lightswitch using the Silverlight client, and this remains an excellent choice in my opinion.

    The problem is with browser-based apps. If the clients are happy to use desktop browsers, then you'll be OK. If they want to access the app from mobile devices, then you really need to look into HTML5/Javascript, as that is (currently) the only way to produce code that will run pretty much everywhere.

    Personally, I wouldn't use Lightswitch for HTML-based apps, as I feel the HTML client is nowhere near production use yet. For one thing, you can only produce mobile web sites with it, which means you have to develop a completely separate web site for desktop clients. Given the ease with which ASP.NET MVC4 allows you to develop one web site that will offer desktop and mobile views depending on the device used, you might as well go down that route and save yourself a lot of hassle and duplicated effort.

    I have other reasons why I am not very excited about the Lightswitch HTML client, but that's the killer for me.

    3) I don't see any reason why you can't stick with VS2010. I am! I haven't seen much in later versions of VS that make me want to develop Lightswitch apps in them. Later versions have some great new features for other types of development, but my personal feeling is to stick with VS2010 for any Lightswitch work. Obviously, that opinion is heavily influenced by the fact that I'm not excited by oData, and even less excited by the HTML client. If you want to use either of these, then moving up is pretty much a necessity.

    As I said, these are my personal opinions, and may be at odds with other people's, especially anyone from Microsoft, and the yes-men that excitedly lap up everything they offer. However, this is a free forum, and I would expect that if anyone disagrees, they will say so, but respect my right to my own view.

    Excellent questions though, and worth it for the discussion that will hopefully be generated. It's always good to discuss these sorts of things out, as you get to see other sides of the story.


    FREE custom controls for Lightswitch! A collection of useful controls for Lightswitch developers. Download from the Visual Studio Gallery.

    If you're really bored, you could read about my experiments with .NET and some of Microsoft's newer technologies at http://dotnetwhatnot.pixata.co.uk/

    Thursday, November 14, 2013 2:55 PM
  • Hi MrYossu,

    I fully agree with you,
    I set up my own company and already have several clients
    and owe it all to Lightswitch silverlight client,
    never needed to implement anything in HTML in my applications and 
    are all Web, if I ever need to use the HTML I
    I prefer to use ASP.NET MVC that besides being open source
    It's great and is improving more and more, I've said several
    times and I will repeat, the MS has to stop losing focus
    every product released, invest on what exists (Silverlight client), improve
    then and if necessary implement another type of client
    Eg HTML, WPF

    PS: I noticed that several people from the time of the Lightswitch 2010 disappeared from the forum
    after the MS has focused only on the client HTML.
    this makes me sad, it was great to see people making and posting examples
    their experiences with the lightswitch silverlight client, but now the forum
    about silverlight client is thrown flies.

    I believe that one day MS will give the attention of Lightswitch silverlight client deserves

    Thursday, November 14, 2013 4:58 PM
  • I've said several times and I will repeat, the MS has to stop losing focus every product released, invest on what exists (Silverlight client), improve then and if necessary implement another type of client Eg HTML, WPF

    I'm not sure that's a fair criticism, at least in this case. Microsoft didn't choose to kill off Silverlight. The massive growth of mobile devices, coupled with the fact that the manufacturers won't support Silverlight (or Flash, probably for the same political reasons) meant that Microsoft had to move in another direction.

    I don't have a problem with that. What I do have a serious problem with is the way they dumped Silverlight developers without any support. I understand their reluctance to invest money in a product with a shrinking market, but they should have kept up support for existing developers.

    Specifically, the Lightswitch team suddenly stopped answering questions about the Silverlight client, and the extensibility forum (which by definition was centred around the Silverlight client) went dead. That was a very mean trick to pull, after we had invested so much in Lightswitch.

    I believe that one day MS will give the attention of Lightswitch silverlight client deserves

    I don't. Silverlight is not going to be developed any more, and for good reason. It's just not worth their time and money.

    I would like to think that they might resume support for Silverlight developers, but I'm not that naive.


    FREE custom controls for Lightswitch! A collection of useful controls for Lightswitch developers. Download from the Visual Studio Gallery.

    If you're really bored, you could read about my experiments with .NET and some of Microsoft's newer technologies at http://dotnetwhatnot.pixata.co.uk/

    Thursday, November 14, 2013 6:05 PM