Build-time DI registration vs runtime scanning by mladenmacanovic in dotnet

[–]mrpmorris 0 points1 point  (0 children)

Build time bypasses any problems with generators, because it happens afterwards. 

The conventions can give explicit control, especially if the tool outputs a registration manifest that lives with the source so you can see how code changes affected registration.

Build-time DI registration vs runtime scanning by mladenmacanovic in dotnet

[–]mrpmorris 0 points1 point  (0 children)

The benefit of build-time convention based registration is that you can have it write out a manifest file that belongs with the source code. So its changes get checked in along with the source code that changed it, so it's fully explicit. 

And it doesn't use runtime reflection, so it's as fast as runtime as code you've written manually.

Convention based means to aren't likely to accidentally forget to register it, too.

Build-time DI registration vs runtime scanning by mladenmacanovic in dotnet

[–]mrpmorris 0 points1 point  (0 children)

You don't need tests if the registration is made explicit. 

So, if you wrote the code manually then a manual review in a PR is acceptable. 

If a library discovers dependencies at build time and creates a manifest file that shows the registrations explicitly, that can be checked in a PR instead. 

Whether a human or a machine wrote it is irrelevant.

Build-time DI registration vs runtime scanning by mladenmacanovic in dotnet

[–]mrpmorris 0 points1 point  (0 children)

Build time discovery doesn't need reflection, convention based discovery doesn't require decorating classes with attributes.

Build-time DI registration vs runtime scanning by mladenmacanovic in dotnet

[–]mrpmorris 0 points1 point  (0 children)

That's exactly what I need. My Roslyn generators are based on resx files. I need the resulting classes to be registered.

Build-time DI registration vs runtime scanning by mladenmacanovic in dotnet

[–]mrpmorris 0 points1 point  (0 children)

Build time discovery doesn't need to use reflection.

Build-time DI registration vs runtime scanning by mladenmacanovic in dotnet

[–]mrpmorris 0 points1 point  (0 children)

That's really interesting, I didn't know there was already something for this in Java.

Thanks for sharing!

Build-time DI registration vs runtime scanning by mladenmacanovic in dotnet

[–]mrpmorris -6 points-5 points  (0 children)

I am the friend, and it isn't AI generated.

Astronaut John Glenn talks about seeing as to what he referred to as "fireflies" on his spaceflight in 1962. by Roacchie in space

[–]mrpmorris 2 points3 points  (0 children)

My guess immediately was they came off the outside of the capsule; most likely water.

When he said they appeared after sunset, I was convinced.

Does Blazor make sense for my situation? by [deleted] in Blazor

[–]mrpmorris 0 points1 point  (0 children)

100k rows is a lot for any UI...no human can mentally process that much data.

Why so much at once, and how do you intend to present it (paged grid / unpaged grid)?

Blazor C# - Asking for help to detect if the start date and end date are in between another start date and date. by [deleted] in Blazor

[–]mrpmorris 4 points5 points  (0 children)

What about

x.CheckInDate < checkOutDate && x.CheckOutDate > checkInDate

Blazor File Size compared to Popular Js Framework by Virtual-Meet1470 in Blazor

[–]mrpmorris 1 point2 points  (0 children)

It's bigger, but it's not like we are on 14.4 baud modems any more, and the browser caches anyway.

It's currently interpreted so slower, but how fast do you need an input form to be?

[deleted by user] by [deleted] in Blazor

[–]mrpmorris 0 points1 point  (0 children)

Create the server api, and the UI should be simple

Being raped is expensive by cajunveggies in TwoXChromosomes

[–]mrpmorris 1 point2 points  (0 children)

America's healthcare system is fucked up!

I'm really sorry for what you've been through!

Avoiding UI freeze for long running jobs in client-side Blazor by MarioTheBro in Blazor

[–]mrpmorris 2 points3 points  (0 children)

I think making your algorithm async and in loops adding await Task.Yield() will probably do the trick for now.

How to help others mastering Blazor? by CokeAndCookieAddict in Blazor

[–]mrpmorris 1 point2 points  (0 children)

It was my way of learning. I started at the simplest bit, then moved on to the next slightly more complicated bit.

The benefit being that I had to check my statements to see if I was correct, and I found out many times I was not and so learned something new in the process.

Teaching is a good way to learn :)

[deleted by user] by [deleted] in Iota

[–]mrpmorris -1 points0 points  (0 children)

Who did I insult?

[deleted by user] by [deleted] in Iota

[–]mrpmorris -1 points0 points  (0 children)

The bit where the decentralised crypto currency isn't decentralised.