Intro to AppSettings in .NET Core - Appsettings.json, secrets.json, and more

  Рет қаралды 132,432

IAmTimCorey

IAmTimCorey

Күн бұрын

AppSettings are a big deal in .NET Core. If you are just using appsettings.json, you are really missing out. There is so much more just with the defaults. In fact, by default, we get five different places to put our settings in each .NET Core application. In this video, we will talk about how to use three of those default locations. We will also talk about how you can learn more about AppSettings in my full course titled .NET Core AppSettings In Depth.
Buy the course: www.iamtimcorey.com/p/net-cor...
Source Code: leadmagnets.app/?Resource=Int...
Mailing List: signup.iamtimcorey.com/
Thanks to Ralfs HBK for the topic time stamps:
0:00 - Intro
3:17 - Where .Net AppSettings are used? Creating a Blazor Server App
6:33 - AppSettings intro
8:45 - Why to use settings
11:50 - Razor pages how to
13:59 - Bringing the configuration in to the application: The setup
18:28 - Side note about double initialization [ OnInitialized() ]
20:45 - Bringing the configuration in to the application: The values
22:55 - Recap: loading from appsettings.json
24:05 - Connection strings
27:30 - AppSettings and source control
29:01 - Sensitive data
32:12 - Development vs Production settings
40:12 - User Secrets settings
45:57 - Summary and concluding remarks

Пікірлер: 294
@haroldpepete
@haroldpepete 2 жыл бұрын
if anybody on the entire internet deserves my money for a course, that person is you, you're the man
@IAmTimCorey
@IAmTimCorey 2 жыл бұрын
Thank you!
@modboxsa
@modboxsa 3 жыл бұрын
Happy birthday for yesterday Tim. hope you had a good one. Love from South Africa...
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you!
@colinrey4589
@colinrey4589 3 жыл бұрын
So much quality content for free!! Just crazy. You make my life as an aspiring developer way easier. I have already rebuilt many of your programms. Thank you! I m sure, you spent lots of effort and time creating this content.
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Great to hear! It is my pleasure
@louiseeggleton7420
@louiseeggleton7420 Жыл бұрын
I took the full course. What I found most valuable was the section on security, particularly, production secrets. The free video focuses heavily on the development environment, but being responsible for deployment as well, I wanted to know more about the production environment.
@steveteece8889
@steveteece8889 3 жыл бұрын
Happy Birthday and Congrats on your subscriber count Tim. I've learnt more from you in 3 years than from 15 years in the industry!!
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Wow, thanks!
@felipealvarez4442
@felipealvarez4442 3 жыл бұрын
Happy birthday Tim, your videos always make me more confident on C#, thanks a lot
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
My pleasure! Thank you!
@juanmanuelgordillogonzalez7186
@juanmanuelgordillogonzalez7186 3 жыл бұрын
Thank you Tim for your special offer. Just bought it on your web page and I' am totally impressed. This will make a lot of challenges much easier to solve :)
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Awesome! I am glad it is so helpful.
@thibaudgallanddemanneville174
@thibaudgallanddemanneville174 3 жыл бұрын
Happy birthday! Such a great video, full course is for tomorrow!
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Have fun!
@AmritPalSingh-gv5im
@AmritPalSingh-gv5im 3 жыл бұрын
Happy birthday Tim, you inspire me to work hard and progress in programming. Thanks for your efforts.
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Great to hear!
@dannyyang2260
@dannyyang2260 3 жыл бұрын
Happy belated birthday! I appreciate you for sharing your knowledge with everyone.
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
You are so welcome
@GG-uz8us
@GG-uz8us 3 жыл бұрын
Learned a lot from you Tim. THANK YOU! And Happy Birthday!
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Awesome! Thank you!
@dhoneybeekingdom7889
@dhoneybeekingdom7889 Жыл бұрын
Wonderful. I only have a few months of experience with .NET Core and had always some confusion with this topic. Your video clarified my ideas a lot, I really liked the simplicity, structure and straight to the point of your explanations.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
I am glad it was helpful.
@UttamDas-ps4eo
@UttamDas-ps4eo 3 жыл бұрын
Happy birthday Tim! Thank you for all your efforts!
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you too!
@ChosenHandle
@ChosenHandle 3 жыл бұрын
Thank you for such a clear and well explained overview of IConfiguration and the apsettings hierarchy! Appreciate it! Cheers.
@tomthelestaff-iamtimcorey7597
@tomthelestaff-iamtimcorey7597 3 жыл бұрын
Thanks for watching!
@ievheniiierokhin1677
@ievheniiierokhin1677 3 жыл бұрын
Happy Birthday to You!!!Wish you many enthusiasm to share valuable knowledge and get the same much thanks for your great job!
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you very much!
@lodevijk
@lodevijk 3 жыл бұрын
Happy birthday, Tim. I really enjoy your videos.
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you very much!
@jeeba73
@jeeba73 3 жыл бұрын
happy birthday Tim!!!! thanks for another amazing video!
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thanks again!
@fatiiseni1
@fatiiseni1 3 жыл бұрын
As always, great content Tim. Just a small correction. I think while reading configuration from various sources, there is no "termination logic" applied. I mean it's not like "I found this setting here, not gonna check the next sources". On contrary is the opposite, it goes through all sources and keeps overwriting values as it finds them. For example, appsettings.Development.json is the last in the chain, that's why those values override the other ones. Simply because the values get overwritten. The secrets are the last ones actually.
@MaximT
@MaximT 3 жыл бұрын
Your channel is my best discovery of the year
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Awesome!
@nnamacha
@nnamacha 3 жыл бұрын
The user secrets was an oh my God there is something like that moment!!! Thank you. And your qualify is amazing thanks again.
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
You're so welcome!
@rahulvishwakarma2902
@rahulvishwakarma2902 3 жыл бұрын
Loved the video shared it with some juniors devs. You really set up a foundations for them. Keep up the good work
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thanks, will do!
@miruli00
@miruli00 3 жыл бұрын
OK, so I've just finished with your the getting started with c# list and wanted to say thanks, you really know how to teach
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Awesome, thank you!
@gilneyjr
@gilneyjr 3 жыл бұрын
It's amazing the way he talks. Sometimes I think that is an old friend. :-)
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you. I appreciate that.
@VinuP2023
@VinuP2023 3 жыл бұрын
Wish you a very happy birthday Tim. May god bless you and your family 🙏 Thank you for your time and efforts 😊
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Many thanks!
@sergioruiz
@sergioruiz 3 жыл бұрын
Thanks for a clear and practical guide!
@tomthelestaff-iamtimcorey7597
@tomthelestaff-iamtimcorey7597 3 жыл бұрын
We are glad it helped.
@eanasthaichi99
@eanasthaichi99 3 жыл бұрын
Happy birthday tim.. Thank you for the video..
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you! ... and you are welcome.
@rvrby2541
@rvrby2541 3 жыл бұрын
Happy Birthday, man! Hope you will be doing well :) Big thank you for your videos ^^
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you very much!
@MikevanKuik
@MikevanKuik 3 жыл бұрын
Thank you for this free Introduction to AppSettings. It clears up some of my questions regarding the overall structure of Projects in .Net and how the different components fit together, although I would really love to see a video on that as well. I did look through your youtube videos allas I didn't find one that seems to cover that. If it is already in existence that is great, could you please point it out to me, if not I personally think that would make a very interesting subject to see a video about, uncovering a bit more of the "magic" that seems to be going on in Visual Studio at some times. After this video I decided I wanted to know even more about this subject so I bought your course, thank you for creating all this wonderful content.
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you for buying in and for the course suggestion, added to the list!
@samuelpopotoane2003
@samuelpopotoane2003 3 жыл бұрын
Thanks a lot Tim, and happy belated birthday from me in South Africa
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you!
@kyryloantoshyn
@kyryloantoshyn 3 жыл бұрын
Great content! Thanks, Tim!
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
You are welcome.
@jimlynch8313
@jimlynch8313 3 жыл бұрын
Happy Belated Birthday! Hope you had a great one! Hope to see the Multi-Project soon :)
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you!
@dimasveliz6745
@dimasveliz6745 3 жыл бұрын
When it comes to teaching C# I cant just think in anyone else. IamTimCorey is a channel that has built us up from lots of view points. Transparency, simplicity, experience and excellence. Even my mama says: "..Oh you're looking at this kind guy again"😅 I strongly wish this channel to keep growing, and all the efforts that you're putting in to be paid off with anything that can be valuable to you and yours. Your community thanks you Tim, and so do I. Greetings from Barcelona
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
I appreciate the kind words.
@Funkfreed
@Funkfreed 3 жыл бұрын
Happy birthday to the best C# teacher on KZbin. Always a pleasure watching your tutorials. Now I'm thinking maybe forcing my data access layer(normal class library project) to hold my connection strings is a bad idea. P.S. I only did it thinking if I have to change my frontend later on it would benefit me. Lol
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
I am glad you see the value
@ViatorRus
@ViatorRus 3 жыл бұрын
Я хотел Вам сказать, что у Вас отличный, понятный и логичный английский. ;) курс по сишарп. ВЫ ЛУЧШИЙ. Вам спасибо.
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Спасибо, я ценю это. Я добавил ваше предложение в свой список.
@juliopinedajung9106
@juliopinedajung9106 3 жыл бұрын
Hi Tim. Another great Video! Thank you. By the way, 20 September was my birthday too! And of course... Happy Birthday!
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Happy birthday!
@n9434178
@n9434178 3 жыл бұрын
Happy birthday Tim!
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you!
@MuthuKumar_RMK
@MuthuKumar_RMK 3 жыл бұрын
Happy Belated Birthday Tim !!!
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you!
@lborate3543
@lborate3543 3 жыл бұрын
Jesus @Tim, I’ve been a .net developer for 2 years. I thought I knew all there was about the app.config / web.config files. Next level stuff there Tim. Love this channel, probably the most valuable like and subscribe channel. I have for sure developed a different solution to things because of having to deal with the app.config file. We store our connection strings, and having a service account password in plain text is obviously not good. Needed this video 8 months ago.
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
I am glad it was helpful, even if you needed it earlier.
@jyotiad18
@jyotiad18 3 жыл бұрын
Happy Birthday, Tim.
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you!
@DrWambua
@DrWambua 3 жыл бұрын
watching 14 hours after upload, and I hope I'm not too late to say "Happy belated birthday Tim!"
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you!
@alihasan3165
@alihasan3165 Ай бұрын
I Swear learning C# for a person coming from languages like python or JS is really frustrating and difficult. The documentation of Microsoft is really bad in terms on navigation and linking topics in a good hierarchy. You are the best in explaining the topics that can be understood by anyone!!! So much grateful for your efforts, thanks from the bottom of my heart.
@IAmTimCorey
@IAmTimCorey Ай бұрын
I'm glad my content has been helpful. Have you seen the Microsoft documentation recently, though? Check out docs.com
@donyjunior
@donyjunior 2 жыл бұрын
Thank you very much for your content.
@IAmTimCorey
@IAmTimCorey 2 жыл бұрын
You are welcome.
@peterknight3024
@peterknight3024 3 жыл бұрын
Just beginning, and only getting traction with programming through this tutorials. I've been learning in .Net Framework and got comfy with the xml config file... then tried a .Net Core app and just failed. Searching around to learn how appsettings.json worked and finding little that helped. Just last night, I wondered if you'd do a video so I could get a fundamental understanding. Wake up, and hey presto! Between you and Ben Eater, I'll understand! Great teaching for a slow learner!
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Hang in there, you can do this!
@francisf.amunde2619
@francisf.amunde2619 2 жыл бұрын
Wishing you a many more happy, blessed and fulfilling years ahead. HAPPYH BIRTH DAY TO YOU, MY MENTOR!
@IAmTimCorey
@IAmTimCorey 2 жыл бұрын
Thank you.
@mirragemelkyr
@mirragemelkyr 3 жыл бұрын
Happy delayed birthday great info. I hadn't thought that the appsettings could be that much useful.
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
They are pretty awesome.
@recepcakir4866
@recepcakir4866 3 жыл бұрын
I got confused about the learning order a bit Tim. You mentioned learning 4 things in order in your latest video as following; C#, Blazor, Docker, and Azure, but here we are seeing Blazor in this video when we are trying to learn C# as a first step. As I'm trying to learn C# and everything is so messy for me, this ordering misconception makes me confused now, could you enlighten me, please?
@ricardoirigoyen
@ricardoirigoyen 2 жыл бұрын
Excellent stuff!
@IAmTimCorey
@IAmTimCorey 2 жыл бұрын
Thanks!
@ricardoirigoyen
@ricardoirigoyen 2 жыл бұрын
@IAmTimCorey do you have a promo to the depth course?
@IAmTimCorey
@IAmTimCorey 2 жыл бұрын
Not currently, no. If you are on the mailing list, you will hear about any discounts.
@rajeshdonepudi1
@rajeshdonepudi1 3 жыл бұрын
Happy Birthday Tim
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you!
@MetalJase
@MetalJase 3 жыл бұрын
Happy belated Birthday Tim. I have an array of objects for one of my subsetting values. When running in development mode, everything works fine if the array in appsettings.Development.json has more elements than in appsettings.json. However, if the other way around, the array has a mixture of elements. In other words, array element at index 0 in appsettings.Development.json overwrites index 0 in appsettings.json rather than replacing the entire array. Is there a way around this? Do you cover it in your paid course? Thanks.
@SonuKumarTech
@SonuKumarTech 2 жыл бұрын
Amazing video. Loved it! (y)
@IAmTimCorey
@IAmTimCorey 2 жыл бұрын
Thanks!
@germanoller4418
@germanoller4418 3 ай бұрын
Thanks Good Man, this was very usefull.
@IAmTimCorey
@IAmTimCorey 3 ай бұрын
You are welcome.
@Tsunami14
@Tsunami14 3 жыл бұрын
Big congrats on hitting 10k customers.
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you!
@hassankuraimi8876
@hassankuraimi8876 3 жыл бұрын
Happy birthday Tim
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you!
@maliqattan
@maliqattan 3 жыл бұрын
love you, very nice videos.
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thanks!
@snehgour9711
@snehgour9711 2 жыл бұрын
Gr8 Content Loved it!!!!!!
@IAmTimCorey
@IAmTimCorey 2 жыл бұрын
Glad you liked it!
@321zipzapzoom
@321zipzapzoom 3 жыл бұрын
Hi Tim ..again grt content and way you present them as usual, Indeed it is a useful tool to use these keys keeping in mind the purpose we need to use yo when it comes to working real quick in agile with devops now-a-days in company Project,
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Glad you like them!
@theElectrASiAN
@theElectrASiAN 3 жыл бұрын
Belated happy birthday Tim. =)
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you!
@sakarikorpela1269
@sakarikorpela1269 Жыл бұрын
Really Great!
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Thanks!
@michaelt1349
@michaelt1349 3 жыл бұрын
Hi Tim, Great videos. I am looking forward to any videos on the integration of any third party payment services like Stripe or TransferWise into .NET CORE 3.1 specifically. Thanks!
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
I will add it to the list. Thanks for the suggestion.
@dhruvdogra8317
@dhruvdogra8317 3 жыл бұрын
Hi Tim, great video! Can we update "appSettings"?
@chizobaheribert6606
@chizobaheribert6606 Жыл бұрын
Thanks for this.
@IAmTimCorey
@IAmTimCorey Жыл бұрын
You are welcome.
@HollandHiking
@HollandHiking 3 жыл бұрын
Happy birthday Tim! Thanks for sharing this. It gives a good veiw. What I really miss are user settings. I will see if this topic is covered in the course. For user settings, the user must be able to change the value of a setting from the UI. After looking for a number of solutions, I now use the appsettings.json for defaults and the good old registry for other settings. (WPF desktop applications only). As far as I can see in the course contents, I see there is a lesson on an Options class. Does this cover user settings and how to set things up that a user can change settings?
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
I'm hoping you saw the video by now and it added value. I do not cover cover user settings specifically
@OurCloudSchool-Hindi
@OurCloudSchool-Hindi 3 жыл бұрын
This is the first time I have seen you. 😀
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
You should check out the Dev Questions series, where I answer questions developers and prospective developers have: kzbin.info/aero/PLLWMQd6PeGY2G8Q0d_yOPc_CocyqrFRoZ I'm on screen for those videos every Thursday.
@lorenasha08
@lorenasha08 3 жыл бұрын
Happy happy birthday Tim... I wish the best for you and your family!!! Thank you very much for your efforts and all this wonderful job fokng those videos... I really love your courses and the easy and clear way that you teach... 🥰 Pdt... I have a question...since Im doing the fundamentals course...and I want to get the course that you are offering here... how long time I will have access to this new course if I bought it? I want the gift...but I will not finish fundamentals in the next days....
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thank you very much!
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
By the way, when you purchase a course, you get lifetime access to it.
@dyakobaram
@dyakobaram 3 жыл бұрын
hey, Mr Tim is filtering data with Linq a good idea? or we should write filtering statement inside the SQL command? I think writing one select statement and then use Linq for filtering make things easier, does this has any noticeable performance difference?
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Let SQL do what it does best and then let C# do what it does best. That means sort and filter in SQL whenever possible and use LINQ only after you have done as much as you can in SQL.
@luckyJYK
@luckyJYK 3 жыл бұрын
Happy Belated Birthday Tim !!! Very useful video as always. I've successfully configured appsetting.json in WPF app after many research online. But I'm struggling to put it to work in MvvmCross app. Because the M and the VM are in a class library while the V is in WPF project. Very confusing. Looks like the bald area in my head will get larger after this. LOL I humbly ask if you could add it to the list of your future videos, along with DI, View Navigation and View inside a view (to create a Menu bar like TimCo Retail Manager app) for MvvmCross app. Thank you and wish you have a nice day Tim!
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Noted and added to the list. Thanks
@ashishtrivedi8739
@ashishtrivedi8739 2 жыл бұрын
Thank you Tim for amazing videos you bring. Regarding appsettings.json file, if it is modified and saved, does this causes the application to restart?
@micaelatucker6626
@micaelatucker6626 3 жыл бұрын
What if you have to obtain specific values from the Windows Registry and need those values to determine whether a database column is set or not. Instead of pulling from the Registry to display a value in a razor page in a BlazorWASM project, is there a way to store keys and values from the Registry safely in an appsettings.json file?@IAmTimCorey
@SuperHddf
@SuperHddf Жыл бұрын
Thank you! :)
@IAmTimCorey
@IAmTimCorey Жыл бұрын
You are welcome.
@vidcresnik9814
@vidcresnik9814 3 жыл бұрын
Hey Tim! Great video. I have a problem with reading the development values tho. Somehow they are not loaded and it does not override the appsettings.json. Even if i try to read values directly from appsettings.Development.json the strings are empty. All other settings that you showed are the same. I am using Core 3.1. Thank you!
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
It sounds like you have a mistake somewhere. The process will read the values if they are there and the path is correct.
@ashimov1970
@ashimov1970 2 жыл бұрын
How can we handle launchsettings.json settings in Blazor Webassembly apps similarly to what you've shown here?
@ReyAlexam
@ReyAlexam 2 жыл бұрын
Thank you for the great explanation. However I have one question. Why would anyone store the value “number of days” in app settings rather than store in a class for constants. Does it bring any benefits?
@IAmTimCorey
@IAmTimCorey 2 жыл бұрын
You can change the appsettings.json file manually in production at any point. You would have to recompile and re-publish your application in order to change a constants class value.
@ariefmuhammadlubis1803
@ariefmuhammadlubis1803 3 жыл бұрын
Happy birthday to you, I hope you make video about design pattern CQRS using Dapper
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
I will add it to the list. Thanks for the suggestion.
@themoakman
@themoakman 3 жыл бұрын
I'm trying to figure out how to make an appsettings.Staging.json and have it run on our staging server but I don't know how to set the environment variable to Staging when we run on the staging server.
@armandopenaleonett1258
@armandopenaleonett1258 3 жыл бұрын
Hello, nice video, I enter here because I have an issue, I have a different connectionString to use in my local project than the one that is used in the Production Project... how can I do to configure for instances a connection string in development mode than production mode, because when I push my changes to the repo the connection String of my AppSettings.Json is been changed with my local Connection Strings but that's not what I want
@bhogikorada5463
@bhogikorada5463 3 жыл бұрын
belated happy birthday, my friend
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thanks so much
@_buffer
@_buffer 3 жыл бұрын
Amazing as always!
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thanks!
@curisticmarketplace8202
@curisticmarketplace8202 3 жыл бұрын
Do you have a tutorial on how to handle Blazor Server App connection timeouts? Running on local works great, but when deployed to production, the connected state times out quickly. Thx for this video.
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
It sounds like a server configuration issue. It should not time out quickly. That does not sound like something you would configure in C# (you can change timeouts on the C# side, though).
@3dmax2
@3dmax2 3 жыл бұрын
Happy birthday Tim, can please make a tutorial about clean architecture on asp.net core
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
I will add it to the list. Thanks for the suggestion.
@naunihalsidhu
@naunihalsidhu 2 жыл бұрын
Thanks!
@IAmTimCorey
@IAmTimCorey 2 жыл бұрын
Thank you!
@thomstunes6485
@thomstunes6485 3 жыл бұрын
Hey Tim, does this also apply for not Core web api ASP.NET MVC? Or is the old json file for confing stored into an object on loading the app still the best way to store configuration for a not Core app ?
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
This system only works for .NET Core. In .NET Framework apps, we have app.config/web.config. You can still create some transformation files but it is definitely not as polishes as this system.
@thomstunes6485
@thomstunes6485 3 жыл бұрын
@@IAmTimCorey thanks Tim, your content is just amazing! You are the best prophet of c# on the internet! 😁
@paullewis2120
@paullewis2120 3 жыл бұрын
You share a birthday with my youngest daughter! Happy Birthday!
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
So cool! Thank you!
@Zexonja87
@Zexonja87 3 жыл бұрын
I'm trying to get deeper knowledge for settings in c# and was so excited when I saw AppSettings in title, but then got a bit disappointed when I saw its for .Net CORE (I'm still primarily using framework...). Nevertheless, still found this video quite useful. Is there maybe .NET framework version of this video or some other resource on the topic? If not, is it planned? :)
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
No there isn't one (and it isn't planned). In the .NET Framework, you put all of your settings in app.config/web.config and then you do transforms using SlowCheetah or something similar to create environment-specific override files to merge in. Then you do most of your transforms in your CI/CD process.
@sharpcoder5056
@sharpcoder5056 3 жыл бұрын
Hello Tim , Thank you for your amazing content. would u please make a syncfusion tutorial, like how to use Syncfusion controls in your WPF application or a short tutorial about Metro Studio :) thx again
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
I will add it to the list. Thanks for the suggestion.
@sharpcoder5056
@sharpcoder5056 3 жыл бұрын
@@IAmTimCorey Thank you :)
@PuraMolleja
@PuraMolleja 3 жыл бұрын
Do you have a video or course where you use Azure environment keys with appSettings? Nice video by the way.
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
No, sorry
@MehStang
@MehStang 3 жыл бұрын
Will these appsettigns work with the GRPC setup? I am having an issue making my GRPC server buildup with dynamic IPs.
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Yep. It is a .NET Core project and it is calling the CreateDefaultBuilder in the Program.cs file so it will work.
@wiktorwilczak3455
@wiktorwilczak3455 3 жыл бұрын
Hey Tim, could you share a tip, how to get these massive intellisense, like yours in 14:31? Mine got only 2 first rows
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Not sure how I got it to show up. Sorry.
@risechess7114
@risechess7114 5 ай бұрын
cool thanks. so when i want to deploy project i need to move my sercrets from secrets.json to something else right? the stuff u menstioned at 46:40
@IAmTimCorey
@IAmTimCorey 5 ай бұрын
Correct, although what is in your secrets.json is typically your local secrets (ones for your local testing environment), so you would be putting your production values in Azure. But yes, the same property names.
@Balgoriusis
@Balgoriusis 3 жыл бұрын
I was quite disappointed you didn't tackle the ASPNETCORE_ENVIRONMENT variable and how it can be set to stage,production,development on different deployments.
@everyonesview
@everyonesview 3 жыл бұрын
Hey Tim! Instead of passing the whole Configuration around Pages to get just the settings' section by way of using the IConfiguration, do you not think it's prudent to rather use the Options Pattern by way of using say the IOptionsMonitor here?
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
I touched on that briefly in this video. It depends. You aren't hurting anything by passing the IConfiguration object around (it isn't recreating the object or using more memory). Using the Options pattern does make your life easier in certain situations though.
@everyonesview
@everyonesview 3 жыл бұрын
@@IAmTimCorey Cheers mate!
@hakami1426
@hakami1426 10 ай бұрын
36:46 So how would the environment variable in launchSettings.json be set to production when deploying to production? Wont you need to edit that yourself and recompile the app?
@IAmTimCorey
@IAmTimCorey 10 ай бұрын
We don't deploy launchSettings.json to production. That's why the environment setting defaults to "production". You don't need to do anything when deploying. Since the file doesn't get deployed, the setting isn't there so the default is used.
@hakami1426
@hakami1426 10 ай бұрын
@@IAmTimCorey That makes sense now, and I also read the officials docs as well. How would you recommend setting the environment for non-prod environments? Update web.config? Set a system environment variable on the non-prod server? This part still has me scratching my head and Idk if there's a general answer to this
@colinrey4589
@colinrey4589 3 жыл бұрын
Maybe you could make a video talking about the ups and downs of developing and debugging a c# backend with Docker. Since Visual Studio adds an easy way to add Docker support.
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Thanks! Noted and added to the list
@colinrey4589
@colinrey4589 3 жыл бұрын
@@IAmTimCorey Already excited 😁. I havent seen any good practical videos talking about Docker and Asp.Net. Most videos are focused only on Docker as a whole. But as you often say, other videos clearly lack context. Which makes it harder to integrate and see the value. Also I believe, Docker is and will be the next big thing. Because it's easier to make a new instance of a programm then to get every concurrency perfect. More CPU cores every year. PS: I have deep respect for people like you, who put quality videos for free online. I mean you take the time and talk about the important stuff even if it's less popular. When I was experimenting with Java, I had to watch trough hasty and unclear indian tutorials, which was a pain for me. Since then, I never touched Java again 😆. I rather learn C# from you! You deserve a special place in the developer community! Greetings from Switzerland 🇨🇭
@maxron6514
@maxron6514 2 жыл бұрын
Danke!
@IAmTimCorey
@IAmTimCorey 2 жыл бұрын
Thank you as well!
@tko9753
@tko9753 3 жыл бұрын
Hey Mr. Corey, I have my VS installed on C: Drive (SSD 500gb) and projects are saved in another drive (HDD). Is this a bad practice? Thank you
@tomthelestaff-iamtimcorey7597
@tomthelestaff-iamtimcorey7597 3 жыл бұрын
My setup is about the same, it should not be a problem.
@davestorm6718
@davestorm6718 2 жыл бұрын
Thanks for this video! One question: How do you read the settings from secrets.json? I moved my connection string to this file, but my app can't seem to access this (or any setting) inside the secrets.json file. I've enabled with " dotnet user-secrets init " and it compiles fine, just have no clue as how it is read (it's not done automatically, so I figure there's some more settings in Visual Studio 2022 that need to be configured for this to work). Thanks again! forgot to mention: this is for a console application - the config is via the following: IConfiguration config = new ConfigurationBuilder().AddJsonFile("appsettings.json", true, true).Build(); DBConn = config.GetConnectionString("DBConn");
@davestorm6718
@davestorm6718 2 жыл бұрын
I figured it out what was missing. IConfiguration config = new ConfigurationBuilder().AddJsonFile("appsettings.json", true, true).AddUserSecrets("your key here").Build();
@davestorm6718
@davestorm6718 2 жыл бұрын
now just have to figure how to NOT have my key string embedded in the code.
@davestorm6718
@davestorm6718 2 жыл бұрын
.AddUserSecrets()
@IAmTimCorey
@IAmTimCorey 2 жыл бұрын
Secrets.json is only for development. It isn't for deployed applications. When you deploy a console app, you will need to have your secret in appsettings.json or another accessible location. Yes, it isn't secure if you have access to the machine, but that's true either way.
@davestorm6718
@davestorm6718 2 жыл бұрын
@@IAmTimCorey - Ah, ok. Makes sense.
@tmjones212
@tmjones212 Жыл бұрын
"For those of you that are building apps in production", I'm proud to say I take that as literally as possible
@CameramanHQ35
@CameramanHQ35 2 жыл бұрын
Hi Tim do you have a tutorial for Startup or ConfigureService Class?
@IAmTimCorey
@IAmTimCorey 2 жыл бұрын
I cover Dependency Injection in .NET Core (ConfigureService) in a course: www.iamtimcorey.com/p/dotnet-core-dependency-injection-in-depth I also use it in various videos, but I don't specifically focus on it.
@CameramanHQ35
@CameramanHQ35 2 жыл бұрын
@@IAmTimCorey is there any promo code?
@Jay-gu8ee
@Jay-gu8ee 3 жыл бұрын
I am having a real challenging time attempting to read appsettings keys from within a custom class, is this possible? If so, can you make a video or help me understand how to accomplish this. All the examples I am finding online are reading key values from a controller. I am attempting to use the options pattern for retrieving values and have successfully got them from within the controller but they are null when calling them from a custom class.
@IAmTimCorey
@IAmTimCorey 3 жыл бұрын
Are you passing the IConfiguration object into the class? I believe I do this in the TimCo Retail Manager series (after the upgrade to .NET Core).
@torrvic1156
@torrvic1156 10 ай бұрын
Excellent lesson Mr. Corey! But can you kindly tell why we need to use appsettings.development.json when we can just use secrets.json? Is it because appsettings.development are accessible to everybody working on a project and secrets.json are only on our local machine for us exclusively? Then what’s the point of using basic appsettings.json anyway? In which situations we need to use what? Feeling a tad confused.
@IAmTimCorey
@IAmTimCorey 10 ай бұрын
Correct. Appsettings.development.json gets put into source control. These ae all options. You don't have to use every option. Don't try to force it. Just figure out what works best for you. For me, I most often use appsettings.json and secrets.json. However, every once in a while I'll use one of the other options.
@divanvanzyl7545
@divanvanzyl7545 Жыл бұрын
15:24 Where do I get that "Startup" class? It does not exist in that context in Program.cs in .net 6
@IAmTimCorey
@IAmTimCorey Жыл бұрын
Here is a video explaining it: kzbin.info/www/bejne/rJXLd6pni7iirck
Intro to Records in C# 9 - How To Use Records And When To Use Them
1:19:44
ELE QUEBROU A TAÇA DE FUTEBOL
00:45
Matheus Kriwat
Рет қаралды 24 МЛН
[柴犬ASMR]曼玉Manyu&小白Bai 毛发护理Spa asmr
01:00
是曼玉不是鳗鱼
Рет қаралды 49 МЛН
100❤️ #shorts #construction #mizumayuuki
00:18
MY💝No War🤝
Рет қаралды 20 МЛН
Intro to Docker - A Tool Every Developer Should Know
1:16:03
IAmTimCorey
Рет қаралды 206 М.
Coding Shorts: Stop Leaking Secrets in ASP.NET Core
14:19
Shawn Wildermuth
Рет қаралды 5 М.
8 Free and Open Source Blazor UI Libraries
9:42
Claudio Bernasconi
Рет қаралды 33 М.
How To Store Secrets For Local Development
7:57
Julio Casal
Рет қаралды 2,6 М.
Dependency Injection in .NET Core (.NET 6)
1:00:32
IAmTimCorey
Рет қаралды 180 М.
What is Span in C# and why you should be using it
15:15
Nick Chapsas
Рет қаралды 247 М.
Intro to Redis in C# - Caching Made Easy
1:27:29
IAmTimCorey
Рет қаралды 171 М.