Answered The Techonoliges, Entity Framework and LINQ

Inki

-
Joined
Aug 24, 2020
Messages
11
Location
Stockholm
Programming Experience
10+
Hi,

I am new to the microsoft technology stack.
Using MSSQL , .NET and the Entity Framework - is there any need use LINQ, does that add any value for me ?
I am about to create a Wniforms application.

best, i
 
@Skydiver I already explained this in post 10 but the OP prefers to ignore that advice. And If they're considering using a database mapper (ORM), just be sure to avoid Entity Frameworks. Dapper would be a better alternative in my humble opinion, due to EF's number of unfixed bugs, and memory leaks. With EF, the more you rely on it, the more problems that application will experience.
 
If you are starting from scratch, don't get sucked it WinForms. Yes, it may look similar to other Java based GUI frameworks and feel more comfortable move, but WinForms is at End Of Life. It was originally just supposed to wither away in .NET Framework 4.x, but it got a little bit of extra life support by getting ported into .NET Core 3.1 to give companies more time to port their legacy LOB applications.

Thanks. Could you provide me with link to Microsoft stating the EOL-date for Winforms - I cannot find that statement.
Does microsoft provide another platform for building standalone applications ?
- fast google on that, the only thing that comes up is WPF.

-i
 
Why do you need proof? We wouldn't have said it if it wasn't a known fact. You can search the life cycle policy for it.

Do some research using a search engine for Winforms vs WPF and you will find almost everyone will be advising the use of WPF, because of Winforms is considered EOL. That is because it's also what Microsoft are recommending. Unless you are building some old legacy type app, you should be using UWP, WPF, Or Xamarin. They are your replacement options. Note UWP apps limit you to windows 10 and windows mobile.
 
WinForms is going to be around for a good while yet. That's not what Microsoft wanted - they wanted everyone to migrate to WPF - but there were a lot of people already using WinForms who were happy with it because it could do what they wanted. That's why Microsoft decided to add support for building WinForms apps in .NET Core. They're not actively developing it any more though, and something rather catastrophic would have to be found for them to service it at all.

That said, if you are new to building Windows apps in .NET then you really ought to go straight into WPF. WinForms was created a long time ago and doesn't support various new technologies or doesn't support them well. WPF was built from the ground up to support new technologies at the time and into the future. It also does a much better job of enabling separation of concerns, so it's easier to write better code in WPF. If you already use WinForms and it does all you want then sticking with it is not so bad - much like sticking with VB6 instead of migrating to VB.NET - but if you're starting out with Windows development now then you do yourself a disservice by using WinForms. You also make it harder to learn WPF later too, because you'll find that you need to unlearn things that you get used to in WinForms. WPF with MVVM really is the way forward for Windows desktop development. UWP is very similar as well, so you can easily build Store apps the same way. Xamarin is also very similar, so you can also build cross-platform mobile apps the same way.
 
Why do you need proof? We wouldn't have said it if it wasn't a known fact. You can search the life cycle policy for it.

Do some research using a search engine for Winforms vs WPF and you will find almost everyone will be advising the use of WPF, because of Winforms is considered EOL. That is because it's also what Microsoft are recommending. Unless you are building some old legacy type app, you should be using UWP, WPF, Or Xamarin. They are your replacement options. Note UWP apps limit you to windows 10 and windows mobile.

Mr. Sheepings.
I am not sure that this is a discussion I want to have at work when writing my report 'Quote from Sheepings at C# Forum 'Why do you need proof?".
It is not really how we do work where I am at, in the current report I am quoting Microsoft on a number of EOL for their products (actually finding some EOL dates published by Microsoft) - often it should not be a problem finding those EOL-dates from various companies.
- so if you do a quick 'jdk 6 end of life' or 'Ubuntu 18 end of life', then you actually will find those dates published at the proper company-site.
So it not about me not trusting you, its about being professional at my job.

best, i
 
Windows Forms is continuing to be supported, but in maintenance mode. They will fix bugs as they are discovered, but new functionality is off the table. Oh, they stress that it isn’t called “WinForms”.

But that was back in 2014 because the decision to port WinForms into .NET Core 3.1 and put it on life support. If you are the type to pay close attention to the github commits, you'll notice though that some things are being stripped out of WinForms .NET Core 3.1 that used to be in WinForms .NET Framework 4.x.
 
WPF with MVVM really is the way forward for Windows desktop development. UWP is very similar as well, so you can easily build Store apps the same way. Xamarin is also very similar, so you can also build cross-platform mobile apps the same way.
Just to put emphasis on what @jmcilhinney said, and to highlight his point; that the above in-quote are all very much more difficult to learn when making that transition from Winforms to any of the above platforms thereafter.

@Inki - Also note I previously mentioned those restrictions you get with UWP apps as i said earlier. There are also other restrictions with UWP apps which also have file system restrictions such as only being able to write files in its own installation medium and access to external paths require additional permissions, and even then; UWP apps are not very good when it comes to working with file systems. So note this when choosing a platform. However, you don't have any such concerns with WPF or Xamarin.

It is not really how we do work where I am at, in the current report I am quoting Microsoft on a number of EOL for their products (actually finding some EOL dates published by Microsoft) - often it should not be a problem finding those EOL-dates from various companies.
Microsoft's EOL policy page doesn't list Winforms anymore. Perhaps due to corporate pressure from their business users? Due to the fact that many, many companies objected to Microsoft's plans to end support for Winforms, it has since been pushed into dotnet 5 and any required upgrades, patches etc are not to be provided for Winforms thereafter. After dotnet 5, it was said there won't be any future updates or maintenance for Winforms itself from what I've previously read. I did go looking for those sources but they appear to be scrubbed from Google search results and Microsoft EOL policy page. Comforting news if you pick Winforms. Eh? How odd though....

With regards for Winforms in dotnet 5. See : Announcing .NET 5 Preview 1 | .NET Blog. - This will apparently be the last of the support for Winforms as highlighted in the article; it stated Winforms will be added among others.

That said, there are a hundred reasons to choose WPF/Xamarin (which is what I'd recommend) over Winforms. In a nut shell... Winforms is old, dated, where WPF is robust, snazzy, slick, fully customisable UI through Xaml whereas Winforms has many limitations unless you get into making custom controls, and even then, you'll still face limitations.

Wpf, is faster, modern, agile, reliable, more stable, better API's and nicer code (as JM already said), encourages data binding... basically its everything Winforms is not. And i'm not being biased either, as I was a big Winforms fanboy in my time. We can only recommend you do your own research on this, as that's not what we do here on this forum for people. :)

If you need to convince your team at work, then I would start by looking through peer review studies dedicated to comparing the two. Finding favouring studies for WPF over Winforms won't be to difficult.

After reading Skydiver's last post, I don't know what to think. There is a lot of contradicting information in this topic now. :LOL:
 
Back
Top Bottom