Here you are: kzbin.info/www/bejne/mqqziZScpdR4oLM There are a lot more videos arranged in different playlists so maybe you can find something useful as well. Regards.
@tommylg9748Күн бұрын
Love this channel ❤❤
@CodeMazeКүн бұрын
Thanks a lot. It is great to hear that.
@henryugochukwuagu2340Күн бұрын
please where is the link to the video where you added authentication?
@CodeMazeКүн бұрын
Hi. This video was recorded before the auth one, so I didn't link it in the description. But you can find both in the same playlist: kzbin.info/aero/PLkOmPTFOxKBrtoebJJIiPVuCFIWuTLBvr That said, I will add the link to that video in the description now.
@hashirrajput8734Күн бұрын
Which method you prefer for verify email using identity? as you previously created a video on MailKit. I'm little bit confuse between both of them.
@Sayada2 күн бұрын
I have read your book and I have a question? Do we need to register all the repository to the DI or just the RepositoryManager ?
@CodeMaze2 күн бұрын
As you could've seen in the book if you have repository classes inside the repository manager, you only need to register the RepositoryManager class as it will initialize other repositories in a lazy manner (only when you need them). But there will be cases where you want to have some repository classes out of the manager class (in big applications all the situations may arise) and in that case, you will want to register that repository with the service collection in DI.
@10Totti2 күн бұрын
Great video thanks!
@CodeMaze2 күн бұрын
You're welcome! Thank you for watching this one.
@Sayada2 күн бұрын
In onion architecture, which layer should we put the redis cache ?
@CodeMaze2 күн бұрын
This really depends on where you want to apply caching. Is it your controllers or maybe the methods inside the service layer. Based on that decision, you can implement a redis cache service either inside the service layer or inside the Infrastructure/Persistence layer with the cahce service interface inside the Domain layer. Again, nothing is carved into stone here, and you have to adopt your solution to your needs.
@Sayada2 күн бұрын
@@CodeMaze tks alot
@CleonLe3 күн бұрын
Waiting for the link
@CodeMaze3 күн бұрын
What link are we talking about?
@CleonLe3 күн бұрын
3:48@@CodeMaze
@CodeMaze3 күн бұрын
Yeah, I am so sorry. Forgot to add it. I will add it soon, but you can search my videos for "send emails with attachments" and you will find it for sure.
@CodeMaze3 күн бұрын
The link is added now. Thank you for the suggestion.
@CleonLe3 күн бұрын
Thankyou 😍
@MarioDon173 күн бұрын
Great video! You have explain the concept very well and given me a better understanding of the VSA.
@CodeMaze3 күн бұрын
Glad it was helpful! Thank you for watching this one.
@MarioDon173 күн бұрын
Is it possible for you to share the code as well? Didn't see any GitHub link
@CodeMaze3 күн бұрын
The source code is part of the patreon membership. With it you get an additional discounts on my courses as well. You can find the link in the description section of the video.
@X3noic3 күн бұрын
great video
@CodeMaze3 күн бұрын
Glad you enjoyed it
@FabianoNalin3 күн бұрын
Thanks a lot.
@CodeMaze3 күн бұрын
Most welcome! Thanks for watching this one.
@CodeMaze3 күн бұрын
Thank you all for watching and for your support. ►► If you want to master Web API development using best practices, check out our Web API book: bit.ly/3x75ZMM ►► Also, to build great full-stack apps with Blazor, check out our course: bit.ly/3Pw3Y33
@MojtabaShojajou3 күн бұрын
Thanks for your explanation. What would happen if the cached token is invalid? What is fallback?
@CodeMaze3 күн бұрын
You are very welcome. That depends on a developer whether they want to handle it on a server or a client side. In my case, I would usually on the client side check if the token is valid before attaching it to the HttpClient. I would use some sort of client app's interceptors and if it is invalid, I would send a request to refresh a token and then attach it to the HttpClient. In my Blazor WASM course this is exactly what I do using the Interceptor class. But it can be done with the DelegatingHandler as well, as you saw in the video.
@mehmetozturk54833 күн бұрын
sir how can send excel file by hangfire please make a video for this topic.
@CodeMaze3 күн бұрын
Well, you should create a normal C# logic to work with that file and then use Hangfire to trigger that job when you need it.
@jerickgeronimo2827 күн бұрын
can I have the code so I can test it? specially the file inside the Dto and Data folders? thank you
@CodeMaze7 күн бұрын
Hi. The source code is available for the patreon members. Also, the dto is a simple class with a few properties and the DtContext is a simple db context class. Nothing too special there related to RabbitMq.
@secretazurestar74028 күн бұрын
Excellent Presentation to focus on concept with simple implementation
@CodeMaze8 күн бұрын
Thanks a lot. Glad you like it.
@flave118 күн бұрын
I love your tutroals, Simple and direct.
@CodeMaze8 күн бұрын
Thank you, glad you like them.
@miaucabogdansorin27029 күн бұрын
Hi, it would be nice to show with draws what is happening and how it works on each step
@CodeMaze9 күн бұрын
Well, I would need a lot of diagrams for that :) I thought having the step by step code implementation would be enough to understand the process.
@kristiadhy10 күн бұрын
I've tried this, but I got an error on the verification. I've checked and checked again between the token generated and the token when confirmed, and they're identical. I'm still not sure what's going on.
@kristiadhy10 күн бұрын
I've finally figured it out! The issue was that I mapped the DTO to the model first and then executed the CreateAsync method. Then, before I sent the email confirmation, I did the mapping again, which caused the user model that created the token was different.
@CodeMaze9 күн бұрын
I am glad you resolved the issue. You can always use the source code, if you are patreon member. It can help greatly.
@dushanbaranige379910 күн бұрын
Keep move another content like hangfire schedule, watchdog, mail/message feature and many more related with microservices.
@CodeMaze10 күн бұрын
Hi. Thanks for watching the video and your suggestion. I already have a video on Hangfire, and I will see about the other suggestions. They sound great.
@CodeMaze10 күн бұрын
Thank you all for watching and for your support. ►► If you want to master Web API development using best practices, check out our Web API book: bit.ly/3x75ZMM ►► Also, to build great full-stack apps with Blazor, check out our course: bit.ly/3Pw3Y33
@ChosenThings11 күн бұрын
Is the repository design pattern necessary with the use of the Entity Framework?
@CodeMaze11 күн бұрын
No. To be honest, nothing is necessary, and you can organize your solution the way you want it. Just, I am great supporter of having the repository layer for the part of the application that communicates with the DB. And yes, I know that famous sentence: "EF Core has its own abstraction", but for me again, it is not a valid reason to use it inside the service layer or God forbed inside the controller. But of course, this is the part of some other conversation.
@lachlanwilson638911 күн бұрын
Works beautifully, thanks Marinko!
@CodeMaze11 күн бұрын
You are very welcome. Thank you too for watchng the video and sharing your comment.
@omarmokhtar335312 күн бұрын
Thanks for the video I think it is better to store the commands in stack
@CodeMaze12 күн бұрын
Hi, thank you for watching it. Well, whatever fits your needs better. If it fits the implementation, I see no reason not to use it.
@JulianRiverplate1412 күн бұрын
amazing video men was the only one which helped me to set up everything approperly
@CodeMaze12 күн бұрын
I am glad to hear that. Thank you for watching the video. There is also one regarding authentication with Ocelot if you want to give it a try. Feedback is always appreciated.
@hueseyinguendogan854115 күн бұрын
Thanks man nice video playlist you have there!! But I have a question though about MediatR: Is ist a good/bad practice to use a command/query inside another command/query?
@CodeMaze15 күн бұрын
Hi. Thank you for watching the video. I hope the whole list will be helpful. Regarding your question, when you say command/query inside another command/query, I belive you mean in a handler. For me, it is the same as when you call another service from your current service. So, I can't say whether it is good or bad practice, but you will probably have to do it sometimes.
@hueseyinguendogan854115 күн бұрын
@@CodeMaze Thank you for the response ✌️Yes I meant that👍
@tommylg974816 күн бұрын
Love this
@CodeMaze15 күн бұрын
Thanks for watching the video. I'm glad you liked it.
@ventoshe16 күн бұрын
Very well explained, thanks! I've been using Hangfire for a few years now. It is reliable and very simple to use.
@CodeMaze16 күн бұрын
Great to hear that! Yeah, it is a great library and easy to use.
@10Totti17 күн бұрын
Great video but: 1) What if I want to start a task without using APIs? 2) Is it possible to programmatically clean up older jobs? 3) Is there a way to prevent jobs from overlapping if they haven't finished yet? Thanks.
@CodeMaze16 күн бұрын
Hi Totti. 1) You are not tied only to ASP.NET Core apps. If you check their documentation, you will see they are using a regular, I would say, console app example. 2) Yes. Of course, if you think about recurring jobs. Again, I just looked at their documentation and there is an example here, it is pretty simple. 3) I believe you think if the job is scheduled for example every 5 minutes but for some reason, it takes more than 5 min to finish. Maybe there is a way, but I am not sure. Again, I think the best way would be to check their documentation about this. I looked for a bit but didn't find anything about it.
@CodeMaze17 күн бұрын
Thank you all for watching and for your support. ►► If you want to master Web API development using best practices, check out our Web API book: bit.ly/3x75ZMM ►► Also, to build great full-stack apps with Blazor, check out our course: bit.ly/3Pw3Y33
@KeondraLeke-x7p18 күн бұрын
This video was a life saver thank you!!!
@CodeMaze18 күн бұрын
You are very welcome. Glad to hear that.
@Sayada19 күн бұрын
What is the difference between clean and onion because the way they split the layer is really the same, the only difference is that one layer is called Application, one is Service ?
@CodeMaze18 күн бұрын
Hi. I think this one will explain the differences better: code-maze.com/dotnet-differences-between-onion-architecture-and-clean-architecture/
@michaelderobio525619 күн бұрын
This pattern makes me hate programming for some reason. I guess I had a bad initial experience with it.
@CodeMaze19 күн бұрын
I would really like to hear why. I completely understand, we all had some sort of similar experience with different patterns, but for me, this one is pretty straight forward and maybe easiest to implement, so it is a bit strange to hear something like that.
@selimbamri823419 күн бұрын
Hello, first of all thank you for this quality tutorial. everything works fine for me but I just have one question. Once the user is authenticated how do I do to retrieve the informations of the authenticated user?
@CodeMaze19 күн бұрын
Hi. You are very welcome, and thank you for watching the video. You can always add new claims inside JWT and extract those values inside the client app. Or, you can simply return the needed information as part of the response DTO with the Token itself. Just be careful which data you share between the server and the client apps.
@Mo-ef9yt20 күн бұрын
Great video. When to use background service vs hosted service vs background task. If i want to perform some (not important) time consuming calculations after performing a save or update to the database which one of the former would be preferred
@CodeMaze20 күн бұрын
Hi, thank you. From one of the online articles: IHostedService conveniently handles short-running tasks using the StartAsync and StopAsync methods. It functions well for tasks like listening to queue messages and invalidating or clearing caches. BackgroundService, on the other hand, runs long-running IHostedService tasks with a single method - ExecuteAsync. So, I think this pretty much explains the difference, but if you want to dive even dipper into the topic, there are a few articles/videos that can help you investigate even further.
@AslamNazeerShaikh23 күн бұрын
Hey Really Great & Unique Content. Can you do one for Linux Background Service With .NET & Ubuntu or Fedora, please.
@CodeMaze22 күн бұрын
Thank you. It will be in my plans for sure.
@yuriy_german23 күн бұрын
any source code, please?
@CodeMaze23 күн бұрын
Hi. The source code is part of the patreon support package with some additional benefits for our products (best price).
@yuriy_german23 күн бұрын
Хорошое объяснение, ждем новых видео в серии.
@CodeMaze23 күн бұрын
Hi. I am sorry, but I will have to reply on English as I had to use translator tool to understand your message. Anyway, there are a few more videos from this searies if you didn't watch them - they are all in the same playlist. I will do my best to record a few more design patterns videos because I think those are pretty useful for developers.
@tusharikatejaswi511724 күн бұрын
This is helpful! Thankyou!
@CodeMaze23 күн бұрын
You're so welcome! Thank you for watching the video.
@parko196524 күн бұрын
Hi Marinko, excellent tutorial, one question though - what is the benefit of adding options to the AddWindowsService extension method in the program class. I was assuming that there would be some sort of auto configuration when running sc.exe but you still used the same name when creating the service in windows.
@CodeMaze23 күн бұрын
Hi. Well, that's the real service name that Event Viewer sees. For example, you can use the sc.exe command to create this service (from the video) but using a different name in the command window. That new name will be displayed as a service name in the Service Manager window. But, once you start or stop that service, you will see the name from the configuration in the Event Viewer because that's the real service name. That's why it is the best to create the service with sc.exe command using the same name you configured in the service configuration.
@GabyLangis24 күн бұрын
awesome video!! is there a way to add time to the email token ? in my testing i forgot 2 times to confirm the email and when on doing something else when i came back to confirm the email 1 hour later the token was expired this is why i was wondering...
@CodeMaze24 күн бұрын
Hi. Yes there is a way. Please check the: "Modifying Lifespan of the Email Token" section of my article: code-maze.com/email-confirmation-aspnet-core-identity/
@GabyLangis22 күн бұрын
@@CodeMaze Thanks man you are the best!! x)
@robertmrobo895424 күн бұрын
During Authenticate, why do you use UserManager.CheckPasswordAsync instead of SignInManager.PasswordSignInAsync?
@FearGod12324 күн бұрын
Thank you very much for teaching Windows Service Applications in .NET. Very helpful!
@CodeMaze24 күн бұрын
You are welcome! Glad you like it.
@markvanlierop726124 күн бұрын
Typo in your title; Origings = Origins
@CodeMaze24 күн бұрын
Thanks a lot.
@10Totti25 күн бұрын
Great tutorial!
@CodeMaze24 күн бұрын
Thanks a lot. Glad you like it.
@فارسجمال-ح6ك25 күн бұрын
Thanks ❤❤❤
@CodeMaze24 күн бұрын
You are very welcome.
@CodeMaze25 күн бұрын
Thank you all for watching and for your support. ►► If you want to master Web API development using best practices, check out our Web API book: bit.ly/3x75ZMM ►► Also, to build great full-stack apps with Blazor, check out our course: bit.ly/3Pw3Y33
@SherazAhmed-q8f25 күн бұрын
simply Outstanding. But I want you to shows us the multiple ways to create a multilingual applications
@CodeMaze25 күн бұрын
Thank you. This is a good suggestion and I will do my best to create such a video.
@prmep47629 күн бұрын
What you have in your custom class Message ?
@CodeMaze29 күн бұрын
It is the part of the Email Service project. Just properties like (To, Subject, Content...) and some other stuff. Nothing too related to the confirm/verify implementation.
@salihe123229 күн бұрын
why are we encyrpting refresh token with RandomNumberGenerator Class can't we make that JWT too
@CodeMaze29 күн бұрын
Hi. No, I am not encrypting a refresh token. I am using that mentioned class to generate one. Refresh token isn't the same as the access token, so you don't need another JWT. You don't need claims and other stuff JWT has inside.
@salihe123229 күн бұрын
@@CodeMaze So i want to publish a api and every api developer is doing like this way.So you say it is secure to publish it like that we don't need to encrypt the refresh token
@CodeMaze29 күн бұрын
You can do it this way. If you have a client app that consumes your API and stores the tokens in local or session storage, you can encrypt the access token inside the client app first, and then store it in the storage. Of course, everytime you send that token with a request, you need to decript it first.