Logging with Log4Net in C#
6:52
Жыл бұрын
Repository Pattern in C#
5:04
Жыл бұрын
Partial Class and Method in C#
4:30
Strategy Design Pattern in C#
4:31
2 жыл бұрын
CQRS using MediatR in C#
8:33
2 жыл бұрын
Attributes in C#
4:20
2 жыл бұрын
Access modifiers in C#
6:14
2 жыл бұрын
FluentValidation in C#
5:42
2 жыл бұрын
Extension methods in C#
2:59
2 жыл бұрын
Yield keyword in C#
5:12
2 жыл бұрын
Optional parameters in C#
3:14
2 жыл бұрын
What is .NET MAUI?
2:19
2 жыл бұрын
Interfaces in C# 8
2:27
2 жыл бұрын
Introduction to LINQ in C#
5:58
2 жыл бұрын
Dependency Injection in C#
3:37
2 жыл бұрын
Properties in C#
2:06
2 жыл бұрын
Abstract class & method in C#
1:06
2 жыл бұрын
Sealed class & method in C#
1:28
2 жыл бұрын
Ref & Out Keywords in C#
1:59
2 жыл бұрын
Async and await in C#
2:39
2 жыл бұрын
Task vs Thread in C#: Task Example
1:42
Пікірлер
@MattCantSpeakIt
@MattCantSpeakIt 5 күн бұрын
So you absolutely didn't show the example of the semaphore being used across multiple processes... In your example, both do the the exact same thing...
@pkmx-um9vb
@pkmx-um9vb 14 күн бұрын
Great explanation, thank you 👍 ...
@zajac4817
@zajac4817 Ай бұрын
Bro, I was heading off to bed and just discovered this channel. I’ve watched like 4 videos, they’re so straightforward and make me understand everything.
@supertenchoo4271
@supertenchoo4271 2 ай бұрын
Good video with clear explanation
@heischono4917
@heischono4917 2 ай бұрын
Hi and thanks for the video.The advantage of SignalR is that the client does not always have to ask whether a new message is available. What should I do if the client only logs on to the server once and then automatically receives updates without any action on its part?
@net-programmer
@net-programmer 2 ай бұрын
SignalR can be used only through the browser. So as long as the user has the web site opened he can receive the messages from the server. If you need to send the messages to the client outside of the browser, you would have to build some sort of background process (in c# for example).
@heischono4917
@heischono4917 2 ай бұрын
@@net-programmer that's what I thought. But I don't quite understand the flow...
@net-programmer
@net-programmer 2 ай бұрын
@@heischono4917 I didn't cover this topic yet, so I can only recommend to you to do research on things like "client server app in c# (tcp/ip)", and after that "background process in c#".
@jkay7540
@jkay7540 2 ай бұрын
Is SpecFlow still supported ?
@net-programmer
@net-programmer 2 ай бұрын
It seems to be, even though last commit on GitHub is from Feb 2023.
@fodecissokho9918
@fodecissokho9918 2 ай бұрын
Yes, I am working on a .NET 6.0 project and using it for BDD testing 👍!
@net-programmer
@net-programmer 2 ай бұрын
@@fodecissokho9918 cool!
@AmirAsefi-ft2ym
@AmirAsefi-ft2ym 3 ай бұрын
@Dineshkumar-gr8nj
@Dineshkumar-gr8nj 3 ай бұрын
Thank you!
@tayo5302
@tayo5302 4 ай бұрын
Thank you. Easiest explanation by far
@net-programmer
@net-programmer 4 ай бұрын
thanks
@sudippachal4262
@sudippachal4262 4 ай бұрын
InvoiceProvider obj = new InternalInvoiceProvider(); obj.PrintInvoice(); obj = new ExternalInvoiceProvider(); obj.PrintInvoice(); It will also execute two PrintInvoice method of two different class with single object, then why we have to follow all. Please explain, waiting for the reply
@net-programmer
@net-programmer 4 ай бұрын
Using strategy pattern you don't have to reinitialize the obj variable. This may be required in some scenarios where you want to preserve the state of the object. See dofactory.com/net/strategy-design-pattern real world example.
@sudippachal4262
@sudippachal4262 4 ай бұрын
@@net-programmer I got the point that we are passing a different class name in the SetStrategy method of context class.But my question is that we can achieve desire output with the help of re-initialization, without any SetStrategy method of any context class.
@pianpiano7931
@pianpiano7931 5 ай бұрын
If I created my own RestApi, how can I link them together with this code? Do I replace the url with the url of my api and name the methods like my api class?
@net-programmer
@net-programmer 5 ай бұрын
Yes, you need to change the URL to point to the endpoint that you want to call. In ASP.NET Core Web API it would be {domainName}/{controllerName}/{actionName}
@Krm3458
@Krm3458 5 ай бұрын
who is fred ?
@bernalfamilia2424
@bernalfamilia2424 5 ай бұрын
Thank you bro, short and straight to the point
@net-programmer
@net-programmer 5 ай бұрын
thanks!
@abdullahbinmamun3803
@abdullahbinmamun3803 5 ай бұрын
Thank you so much
@net-programmer
@net-programmer 5 ай бұрын
thanks!
@samduss4193
@samduss4193 5 ай бұрын
I am lost lol
@honeyjuice219
@honeyjuice219 4 ай бұрын
you're not alone 😔
@samduss4193
@samduss4193 4 ай бұрын
@@honeyjuice219 if you learn C# i look for a team mate :) if you will :) we can share idea and perhaps learn faster ;)
@dagmawegebere8150
@dagmawegebere8150 6 ай бұрын
are you free to help with my project now?
@ImmortalPlayz
@ImmortalPlayz 6 ай бұрын
Thank you for the succinct video, it really helps!
@net-programmer
@net-programmer 6 ай бұрын
I'm glad you liked it!
@pakvg85
@pakvg85 7 ай бұрын
sealed / internal is a scourge and cancer for open source, but it will be revealed too late, when all the damage will be already done.
@FunnySubmarine-ij4zk
@FunnySubmarine-ij4zk 7 ай бұрын
Thank you
@redmaster12251
@redmaster12251 7 ай бұрын
Polak detected
@mehdi-vl5nn
@mehdi-vl5nn 8 ай бұрын
if i use auto automapper do i need FluentValidation
@net-programmer
@net-programmer 8 ай бұрын
These packages do different things, so it depends on your given scenario. FluentValidation is used to validate user input (check if it meets the conditions, for example if the email has proper format). AutoMapper is used to map objects from one class to another (for example from string to custom Email class that you've created).
@mehdi-vl5nn
@mehdi-vl5nn 8 ай бұрын
@@net-programmer great thank you very much
@abbaskhan.786
@abbaskhan.786 8 ай бұрын
When the if condition becomes false, then the task is skipped, but the task should not be skipped until the condition becomes true.
@mauriciobarbosa4757
@mauriciobarbosa4757 9 ай бұрын
Muito Bom.
@yourownazog8069
@yourownazog8069 9 ай бұрын
now Clean Architecture looks simple! Thanks
@Tymonello
@Tymonello 9 ай бұрын
Może chciałbyś dołączyć do fajnej polskiej społeczności dotnetowców?
@wennwenn1422
@wennwenn1422 9 ай бұрын
Example of SemaphoreSlim vs Semaphore was weak. How can you use Semaphore for system wide operations? Can you make an example using named semaphore object?
@charss5416
@charss5416 9 ай бұрын
Hi, I was asked about these a few days ago during an interview!
@net-programmer
@net-programmer 9 ай бұрын
happens quite often :)
@SaltandDragons
@SaltandDragons 9 ай бұрын
Good explanation but please zoom in a little.
@GretSeatDev
@GretSeatDev 9 ай бұрын
Still have no idea why either of these are used.
@criticalthinker1123
@criticalthinker1123 7 ай бұрын
*he just copied the content from another video that was made 10 years ago. the main purpose when posting a video is explaining why we even need to use either and what situation*
@xavieracaling6866
@xavieracaling6866 7 ай бұрын
obviously to simplify the codes into shorter and clean one
@mahshidmz
@mahshidmz Ай бұрын
😭😭😭😭😭😭😭😭😭🤝🤝🤝🤝
@EaswaranParamasivam
@EaswaranParamasivam 10 ай бұрын
Excellent!!! What a clarity, simple and elegant narration!! Keep up the good work!!! Much appreciate it!!
@net-programmer
@net-programmer 10 ай бұрын
Thanks!
@Jayson1945
@Jayson1945 10 ай бұрын
To small I can't see lol
@AmirHosseinBagheri
@AmirHosseinBagheri 10 ай бұрын
Your explanation is shit!
@andrecarcausto2740
@andrecarcausto2740 10 ай бұрын
in the last part, the file appender should be created automatically? or i have to create it so it saves itself there? ty I am just stuck there
@net-programmer
@net-programmer 10 ай бұрын
I don't remember to be honest :) But I think it wouldn't be created automatically, please create this file manually. The content should be created automatically while running the app.
@andrecarcausto2740
@andrecarcausto2740 10 ай бұрын
@@net-programmer ty it was created automatically but i couldn't find the file. It was deep in the bin carpet if i remember correctly.
@net-programmer
@net-programmer 10 ай бұрын
@@andrecarcausto2740 Cool!
@sarwalgaurav
@sarwalgaurav 10 ай бұрын
Thanks for making it and keeping it so simple, just to know the EF Core entities are going to part of Core application? Also which layer will contain the external API's or libraries (from Nuget). Also security is going to be part of Infrastructure layer ?
@net-programmer
@net-programmer 10 ай бұрын
1. ef core entities will be stored in the core project, 2. the UI layer contains the API controllers, it might be renamed if there is no actual UI, just pure API. 3. Each layer may contain it's own nuget packages. 4. Ideally security would be implemented in the infrastructure layer, but in some cases it might need to be a part of the UI.
@ROHAN-pg3gh
@ROHAN-pg3gh 11 ай бұрын
Thank you bro! Finally a simply fine code that works.
@net-programmer
@net-programmer 11 ай бұрын
thanks
@mohammedmshal3246
@mohammedmshal3246 11 ай бұрын
thank you 👍👍
@ziaullahhassan3162
@ziaullahhassan3162 11 ай бұрын
how can i get the source code ?
@net-programmer
@net-programmer 11 ай бұрын
I don't have the exact code anymore, but you can see similar examples at the docs: docs.specflow.org/projects/getting-started/en/latest/GettingStarted/Step1.html.
@arifhossain7633
@arifhossain7633 Жыл бұрын
well explained
@jayschwarz4365
@jayschwarz4365 Жыл бұрын
Do you like the idea of building a generic repository that implements the actual DB calls that is used by all the services?
@net-programmer
@net-programmer Жыл бұрын
Sure, that's actually used very often in real-world projects.
@bedirhandincer3448
@bedirhandincer3448 Жыл бұрын
I think the DI on minute 7:55 is perfectly fine, since the UI layer may use anything from the Infrastructure layer. In the onion architecture these are on the same layer, which means you don't break the direction of dependency ruling.
@net-programmer
@net-programmer Жыл бұрын
Interesting point! You can find this fragment in the Microsoft docs I've mentioned: "Both the UI and the infrastructure layers depend on the application core, but not on one another (necessarily)." It seems to be okay, as you've mentioned.
@ahmetselcuk1400
@ahmetselcuk1400 Жыл бұрын
C# bilgeligini pratik anlamda mukemmele getirmek ixin butun enerjileri kabul ediyorum
@JanKowalski-ld4ec
@JanKowalski-ld4ec Жыл бұрын
Bardzo fajnie tłumaczysz, szkoda że odcinek o indekserach tak krótki, zajawka raczej niż wykład. Ale co do zasady super, co do objętości, apetyt jest wiekszy niż podana porcja ;)
@net-programmer
@net-programmer Жыл бұрын
Dzięki, w przyszłości będzie więcej
@00main_master
@00main_master Жыл бұрын
Hi! I'm from Russia. can you upload the source code? it is very inconvenient to rewrite from the video
@net-programmer
@net-programmer Жыл бұрын
Currently I don't have this code uploaded anywhere, but you can find similar examples of configuration (I suppose this is the most problematic part) in the official documentation at logging.apache.org/log4net/release/manual/configuration.html
@ezt1215
@ezt1215 Жыл бұрын
Nice and straight forward explanation. Thanks
@ZuraevD
@ZuraevD Жыл бұрын
thanks a lot:)
@net-programmer
@net-programmer Жыл бұрын
you're welcome!
@psyk0l0ge
@psyk0l0ge Жыл бұрын
But can you also debug c# on linux? I can run the application, but degugging it it gives me errors...
@net-programmer
@net-programmer Жыл бұрын
Sure, you can. Which IDE are you using? What kind of error are you getting?
@psyk0l0ge
@psyk0l0ge Жыл бұрын
@@net-programmer I finally managed to do it I was having multiple csproj files and created for the wrong one
@ericcartman2119
@ericcartman2119 Жыл бұрын
liked!
@net-programmer
@net-programmer Жыл бұрын
cool!
@kvelez
@kvelez Жыл бұрын
using System; using System.Collections; using System.Collections.Generic; using System.Linq; namespace ConsoleApp1 { public class Program { static void Main(string[] args) { var tuple = (element: 5, item: 6); Console.WriteLine(tuple); (int el, int it) tuples = (7, 8); Console.WriteLine(tuples); } } }
@chengxiaoxia8046
@chengxiaoxia8046 Жыл бұрын
Nice video. Always get straight to the point with clean code and concise explanations. Thanks.
@Drew-EZ
@Drew-EZ Жыл бұрын
Best explanation for this topic in youtube. I've seen a lot of video before this and they provided no value.
@net-programmer
@net-programmer Жыл бұрын
Thanks