I am on a mission - to convert all my older xBase apps to X#. I have 38 to go!
Robert has kindly given me an updated copy of 'XPorter' so that WPF apps convert okay, there previously was an issue.
This has allowed me to make the first steps with the app shown below - it was the conference sample from 2015, which did MVVM, WPF, XAML and data binding, as well as use EF6.
Because we did not have Roslyn back then, I had to do the LINQ and some EF6 stuff in C#, so I made a 'DAL' - or thin "Data Access Layer". This is still present in the exported app, but I now intend to manually convert the C# so we have 100% working X# code. I will make this available when the task is completed so we can all see the required X# syntax.
Note also that at the moment there is still 'VN' in some titles and folder/file names. All will change as I make the change-over. Hopefully no legacy 'bits'.
Hope this interests as few, and THANKS to Robert for the new working XPorter app.
Thanks for the 'travelling' support - the journey is now over (well the first part at least) and it was an interesting route for a journey, indeed ;-0)
I now have a re-shaped version of my main demo app for the 2015 Cologne conference. It is all in X# and no C# in site, or other xBase links either.
I am including an image of the better formed (structured) S.E. (solution explorer) pane from VS 2017 RC 3 as this helps explain what the app does for us :-
You will see enough in the SE pane detail to know that we have a general MVVM pattern of design approach. As well as there being a strong presence of LINQ to support the Entity Framework (6) and 'code first' application.
Out of interest the first time I got the code to (eventually) compile, the database in SQL Server was correctly created and seeded with sample data. Great!
Here is the main 'entry' screen :-
Each of the buttons in the two sets of seven, will produce a different 'View' which is of a UserControl format, and these UCs get swapped in/out of the ContentControl at the bottom half of the main screen.
The screen can be dragged at the bottom right corner to size and accommodate the data grid contents - see these next two examples :-
And now another which uses a couple of Enums for specific data values - eExp (experience) and eKnow (knowledge). You may have noticed a folder entry in the SE pane for 'Enums'.
Finally we have an example of an edit screen where data can be interactively changed and then saved back to the back-end database.
In manually changing the C# code I noticed some code PRG dates of March 2013 - yes, a long time to wait for LINQ to be available to me in xBase. So thanks to Roslyn and Microsoft, and Robert and his team ;-0)
Before I go let me say I love the fact that I can use a single 'dot' in place of a double dot, most places in X# - this made the manual coding changes from C# to X# a lot less tedious ;-0)
Karl, I am sure you will shout at me for using ' . ' but it is easier, and I am a lazy guy ;-0)
Hope this interests a few - AND - guys attending the Conference in Cologne will get a full and FREE copy of this.
Probably Robert may make changes, or come to the rescue. The file size is just over 5 Megs - because I had to increase the screen capture area so I could demonstrate the app main screen re-sizing to fit/suit the data display.
I will try here just in case I can get away with it :-
Nope, it does what is says on the can - 4 Megs only at the moment.
Good luck with the viewing, which ever way you do it.