this post was submitted on 09 Aug 2023
14 points (100.0% liked)

.NET

1502 readers
1 users here now

Getting started

Useful resources

IDEs and code editors

Tools

Rules

Related communities

Wikipedia pages

founded 2 years ago
MODERATORS
 

I didn't find this anywhere convenient when I was troubleshooting so I thought I'd post this here.

We have some large projects with a lot of dependency injection, and it was taking up to a minute to start a local dev API. After a lot of troubleshooting we found it was the dependency injection validation, which is optional and disabled in production - you can turn it off using:

webBuilder.UseDefaultServiceProvider(o =>
{
  o.ValidateScopes = true;
  o.ValidateOnBuild = false;
});

in the ConfigureWebHostDefaults() section, before the webBuilder.UseStartup() call. (I'm pretty sure this is the default template but it's been a while since I set it up..)

Saves around 50 seconds when waiting for a local API to start - obviously you don't get nice messages if you've created an issue with your dependencies so be aware of that.

I'd probably also explicitly disable ValidateScopes when it's not a dev environment but that has a lower performance impact.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 1 points 1 year ago

Does this apply to ASP.NET Web Forms? :) Legacy dev is where the money's at, just be prepared to stare at build output for 95% of your life.