some advice

some advice

Old forum URL: forums.lhotka.net/forums/t/12769.aspx


uwefms posted on Saturday, October 11, 2014

Hi everybody,

  maybe somebody can give me some advice ...

I wrote apps in Winforms and Silverlight for school administration and schools to be able to manipulate data of pupils, statistics etc. The common data pool is in SQL Server and school administration is working in a LAN and schools access data by a Silverlight client via internet. 

After a lot of reading and thinking we decided to rewrite the Silverlight client in MVC (5). Win 8.1 and the followers are not an option as many communities are on Win XP still and will stay with Win 7 as long as they can. So there will be no XAML and all the benefits of Silverlight in the new client. I never before had to do with Asp.Net (except the Silverlight part) and so a lot of learning is to come ..... 

Fortunately there is no hurry (until now) and I can take time to learn everything from the scratch. So here are some of my questions:

 - Is there a better option than going into MVC (HTML 5 / JS ) for our scenario ?

 - Do I have to use the built in Membership / Role providers in MVC or can I go on to use our built in security?Clients using the MVC app only are allowed to change their passwords - all other security management (create new users etc, ) is done by a perfectly working Winforms app. So if this was possible, I only had to write a login screen. This is working well in our Silverlight and Winform apps. There is a library creating the needed Csla Identity and Principal objects and handling the other login stuff.

- Are there any working - up to date (MVC 5 ) - CSLA samples (maybe even) using the http proxy with async data access. If you are new to this stuff, it is really hard to get the information you need out of the samples.

Of course I have the CSLA 4 books and videos.

   Hopefully someone can enlighten me

       TIA

         regards

             Uwe

 

 

 

RockfordLhotka replied on Sunday, October 12, 2014

h5/js is a completely different platform from .NET. At this time all your CSLA code must remain on the server, and you need to write an entirely separate h5/js client application that calls services to interact with your server code and data.

You might also consider using Xamarin (www.xamarin.com) to leverage your .NET code on mobile clients by creating a smart client for iOS and Android very much like your existing Windows smart client.

uwefms replied on Sunday, October 12, 2014

Hi Rocky,

  thanks for your thoughts.

My main concern are not iOS or Android clients, but what will be, when Silverlight is gone one day and all browsers will refuse to install the plugin. I know that h5/js is completely different and everything happens on the server with little or no option to persist data with the client. This kind of frightens me, when I think of all the comboboxes we use in some of our data input forms. This works well with Silverlight and the performance is very good - even with a slow internet connection. This program is used by public service and in Germany this means 99,9 % Microsoft environment. Mobile devices are not an option - you need a desktop computer with a keyboard to be able to handle the amount of data which has to be entered or changed.

Unfortunately I am not so familiar with the new options Win 8.1 has to offer.

So is there an alternative (except MVC), if we want to transfer our Silverlight (business app) client to a newer technology and stay with windows.

  regards

      Uwe

 

RockfordLhotka replied on Sunday, October 12, 2014

I brought up Xamarin because if you want a cross-platform way to use .NET this is the answer.

If you only care about Windows clients then switch from Silverlight to WPF and use ClickOnce for deployment.

wilfreds replied on Monday, October 13, 2014

You could try http://visualwebgui.com/  Feels like WindowsForms, but runs in your browser.

They recently changed from paid to free license. There is concern about the business plan and its core component is not open source.

On the other side. You will find it very easy to convert your WinForms application(in most cases). And it is working very good with CSLA and databinding. Except a Combo box Sad bug so I handle that with a some codebehind.

Thanks to CSLAcontrib http://cslacontrib.codeplex.com/ for making this possible.

 

RockfordLhotka replied on Monday, October 13, 2014

There's also this promising tool:

http://cshtml5.com

tiago replied on Saturday, October 18, 2014

wilfreds

You could try http://visualwebgui.com/  Feels like WindowsForms, but runs in your browser.

They recently changed from paid to free license. There is concern about the business plan and its core component is not open source.

On the other side. You will find it very easy to convert your WinForms application(in most cases). And it is working very good with CSLA and databinding. Except a Combo box Sad bug so I handle that with a some codebehind.

Thanks to CSLAcontrib http://cslacontrib.codeplex.com/ for making this possible.

Hi Wilfreds,

In order to take the most out of CSLA.NET, you need boud controls. A lot of standard Windows Forms miss that feature. Strange enough, their WebGUI equivalents support data binding.

I'm wrtting some bound controls like TreeView (for Windows Forms and WebGUI) and other standard Windows Forms controls.

I won't add these conrols to CSLA.NET Contrib because they are general interest controls. Thus I will release them under MVVM FX for Windows Forms and Visual WebGUI another library I'm coordinating.

tiago replied on Tuesday, October 14, 2014

Hi Uwe,

If you have a running Windows Froms application, it's quite easy to port it to a web client.

Visual WebGUI is now completely free. Provided you used only standard controls, the application will be easy to port.

 

PS - There are some CSLA utilities and controls available for Windows Forms. They are ported to Visual WebGUI on the CSLA .NET Contrib project.

uwefms replied on Friday, October 17, 2014

Hi Tiago,

  thanks for your answer. I downloaded Visual Web GUI and will take a look at it. We use quite a lot of Infragistics stuff, so Rocky's advice to look at WPF is our first option at the moment. As you are involved in CslaContrib ...

Will there be a CaliburnMicro 2.0 version in the near future ?

     regards

         Uwe

 

 

RockfordLhotka replied on Friday, October 17, 2014

I wonder about the future of Caliburn going forward. The original creator has moved on to do other things. My understanding is that there are still some other people maintaining the code though.

At the same time, MvvmLite has been updated to support Xamarin as well as WPF/WinRT, and there's another active project called MvvmCross that started on Xamarin and (I think) now supports Windows.

tiago replied on Saturday, October 18, 2014

RockfordLhotka

I wonder about the future of Caliburn going forward. The original creator has moved on to do other things. My understanding is that there are still some other people maintaining the code though.

At the same time, MvvmLite has been updated to support Xamarin as well as WPF/WinRT, and there's another active project called MvvmCross that started on Xamarin and (I think) now supports Windows.

Hi Rocky,

Caliburn.Micro isn't just an MVVM library. It includes some interesting features like Conductor. None of these are available on other MVVM libraries. I find Conductor so interesting, I'm planning to port it to Windows Forms/WebGUI.

 

tiago replied on Friday, October 17, 2014

Hi Uwe,

There is a very recent (as in today) ticket Update to Caliburn Micro 2.0.x https://cslacontrib.codeplex.com/workitem/35629

This task is assigned to Matthew Copeland.

So the answer is yes, there will be a port to CaliburnMicro 2.0.

pecen replied on Friday, October 17, 2014

Hi Uwe,

You are mentioning using either Membership or your built in security.

Regarding Membership, Microsoft have actually put Membership on the obsolete stack. Have you considered using MS Identity instead, where you for instance can use Claims-based authorization? Claims are interesting for two reasons. The first is that an application can obtain claims (security information about users) from multiple sources, rather that just relying on a local database for information about the user. The second is that you can use Claims to manage user access to your application more flexibly than with standard roles. Imo Claims can be a flexible way to use together with your built in Security.

Regards

Peter Centellini

 

Copyright (c) Marimer LLC