Live data from Hacker News

Understanding the .NET ecosystem: The evolution of .NET into .NET 7

andrewlock.net

51–60 of 357 posts

Re: Understanding the .NET ecosystem: The evolution of .NET into .NET 7

#51
post #32

I'd be curious to know what is the actual adoption of .net core. I.e. of all the actively developed applications (not just new projects), what is the .net core / .net framework split. I found that the upgrade process is not seamless. Asp.net core has little to do with asp.net MVC. Winform introduced all sorts of contraints. The BCL is full of small changes or features missing. People are less vocal than for the pytho…

> Not breaking your users used to be a laudable goal of the .net team. I miss it

Is it that bad once you are on .NET Core? Asking as someone still on Framework.

Framework -> Core ofcourse is breaking, what did you expect when going cross platform and totally rearchitected?

Re: Understanding the .NET ecosystem: The evolution of .NET into .NET 7

#53

As a fan of O'Caml, I have to ask: what's the status of F# on .NET? ...and is it used much compared to C#, or is its use at least growing, or is it stagnating/dying?

I have a side project where, for some years now, I've supported an app built using F# with Xamarin.Forms and the Fabulous MVU framework. Before .NET 6, things were generally pretty great, and I thought this was an impressive achievement considering how many moving parts the combination of .NET with F# + Xamarin + Fabulous entails.

As .NET 6 and MAUI started to come on the scene, stuff went haywire pretty badly, tooling issues like breakpoints in Visual Studio no longer working in my projects, obscure build errors, confusing build warnings, dependency hell particularly with Xamarin.Android NuGet packages and Xamarin.Essentials. I'm still not up to date with all NuGet packages because doing so breaks my app at runtime. I'm in this halfway point in regards to use of the PackageReference project type. Things haven't been smooth lately for F# and Fabulous projects.

Things are slowly getting better though, and I would say that my experience is probably not entirely typical due to the inclusion of Xamarin, which introduces a whole additional layer of crazy. I think if you were to use F# for backend web services for example, then your experience would probably be a great deal more palatable than mine. I don't think F# is stagnating or dying by any means, but I do feel that it is still a second class citizen to C#. I hope MS continues to work towards this not being the case, because with all the "batteries included" of .NET behind it, I think F# is a great functional-first language.

Re: Understanding the .NET ecosystem: The evolution of .NET into .NET 7

#54

Earlier quoted context omitted.

> ORM? EF Core is pretty good. We're moving to .Net, and I was surprised by how poor the built-in DB stuff is. It's like either assembly or Python, but nothing in the middle. That said I've also been impressed about how nice it is to get stuff going. I used C# back in the .Net 1.1 days and yeah massive difference in ergonomics.

What would you like build-in db stuff to be like?

Well I mean DataTable and friends can handle master-detail for example, but you gotta do a lot of plumbing to set it all up, especially with autoincs involved. Was kinda expecting it to be less work.

Ideally I'd like to supply some selects, fill up some DataTables with master-detail data, manipulate it and commit changes.

But yeah, maybe I gotta check out the latest EF stuff and see if I can't convince the others...

Re: Understanding the .NET ecosystem: The evolution of .NET into .NET 7

#56

Earlier quoted context omitted.

>It's like either assembly or Python, but nothing in the middle. Dapper seems to be in the middle and it is pretty popular

Yeah, but from what I saw it doesn't help much with master-detail setups? Like, inserting or updating an order with order lines etc. We rely heavily on those.

It is pure SQL, so it should, I think?

Re: Understanding the .NET ecosystem: The evolution of .NET into .NET 7

#57
post #6

I love c# and dotnet. I've been holding off on flutter and praying Maui becomes a real thing

I'm too old to believe that, even if it becomes a real thing, it won't die exactly like the rest and leave someone supporting a dead framework or doing a rewrite on the next doomed thing. Those kinds of things depend too much on the rest of the world sharing interest in keeping it alive. Apple and Google aren't going to do that unless it benefits them, and it gives them a EEE attack surface to use against MS.

Re: Understanding the .NET ecosystem: The evolution of .NET into .NET 7

#58
post #26

Earlier quoted context omitted.

>We're moving to .Net, and I was surprised by how poor the built-in DB stuff is Right now EF Core is probably the best ORM that has ever existed. What exactly is missing? Although for performance you would probably reach for something like Dapper but that is not an ORM.

Well that was my point, either you're writing a lot of code yourself ("assembly"), or you use EF ("Python"). We're not used to something like EF, perhaps it would work for us. But debugging generated queries due to performance issues is something we'd like to avoid. For now the decision was made to not use EF.

You can easily echo them to the console or debug window.

To be honest you should keep all ORM queries fairly simple if you can. Where clauses fine. Inserts, updates, deletes, ORMs save so much code, and so much pain when you add new properties/remove them.

But if a query is more than a few includes or joins you should be handcrafting it with FromSQL() or loading it piecemeal using Load().

And don't even think about using it to make complicated reports, that is not a good idea. Make a stored procedure or view.

And that's especially true if you are using anything other than SQL Server. I've seen abysmal performance myself on MySQL/Maria on moderately complex EF queries. I've not really looked since EF 6, but it used to love making nested selects instead of JOINs, which were fine in SQL Server but terrible performance-wise in MySQL. Postgre I've never used with EF in anger so can't comment.

You can use EF with Hot chocolate to make a GraphQL endpoint really easily, but I'd imagine that's an easy way to saddle yourself with serious performance problems unless you limit the levels it can go. I'd be interested to hear if anyone's using it and how they find it?

Re: Understanding the .NET ecosystem: The evolution of .NET into .NET 7

#59
post #12

Been using .NET for years now for backend web development after having taken a break from C#. It is such an improvement over the old .NET framework. When I started building my first backend with it, I was surprised how much was included and "just worked". Need to add authentication? Few lines. OAuth? Also built in. Response caching? Yes. ORM? EF Core is pretty good. Need to use env variables to override your JSON con…

nestjs provides a comparable experience for nodejs as well

Re: Understanding the .NET ecosystem: The evolution of .NET into .NET 7

#60
post #32

I'd be curious to know what is the actual adoption of .net core. I.e. of all the actively developed applications (not just new projects), what is the .net core / .net framework split. I found that the upgrade process is not seamless. Asp.net core has little to do with asp.net MVC. Winform introduced all sorts of contraints. The BCL is full of small changes or features missing. People are less vocal than for the pytho…

I just ported a pretty large domain specific library from VB with .NET Framework 4.61 to C# with .NET 7. It took me probably 3 to 4 days to do with the assistance of Instant C# converter.

There are lots of gotchas here and there and it does require a pretty reasonable understanding of both legacy and new frameworks.

Post reply on HN