IAmTimCorey
IAmTimCorey
  • 172
  • 4 976 240

Video

Weekly Challenge: LINQ
Views 2.7K3 months ago

Comments

  • Justin Williams
    Justin Williams Hour ago

    Tim, this seems quite promising for a project I'm working on NOW, but I heard your advice to NOT put this into production for a while. I have a Console Application that receives JSON data from an external application and it forms a handful of Lists, updating them as JSON data is received every few seconds. I'd love to make the contents of those Lists viewable from a webpage, and I am doing that VERY crudely by simply writing to a .htm file that is accessible to the Internet via IIS (97.105.242.110/occupancy.htm and 97.105.242.110/displays.htm) but as you can see I have a hard refresh once every second so that I can display any changes as they occur "in real-time" so to speak. I'd love to simply update the counts or status without having to refresh the entire page, as well as allow the end-user to modify values such as background and text colors so they can tailor the appearance of those pages to their liking. What recommendations do you have for me to accomplish this more efficiently and elegantly? The hard refresh is killing me! LOL Thanks in advance for your time! LOVE YOUR VIDEOS!

  • Mohamed Abdinur
    Mohamed Abdinur 3 hours ago

    So long as Microsoft has ambitions of not being Intel x86 bound I think UWP will still be kicking around. It was the reason they made that framework not to just only unify across a cross-platform Windows environment but to do so regardless of the hardware that Windows screen was running on. I think MS actually built a framework with unintended consequences that just might be a net benefit. Like pairing UWP with UNO Platform gets you a Win10, Android, iOS, and Web Assembly App for the price of one code base ... and the UI can be made to all look the same in different screens or be quickly adjusted for each. Obviously I'm just speculating myself ... so who really knows the chaos that is the MS machine. One thing for certain is that console and WinForm RAD are here to stay as they are basic timeless concepts.

  • Sunil Anthony
    Sunil Anthony 4 hours ago

    Awesome video on swagger for .net web api. However, you can also utilize the input box at the top header to fill the bearer token by populating it once and use it to test any method? Like this: c.ApiKey("Token") .Description("Fill bearer token here") .Name("Authorization") //In your case access token .In("header"); You can also use a customer HTML and CSS to override the default header like below if you need to but not necessary: c.InjectStylesheet(thisAssembly, "WebAPI.SwaggerExtensions.customSwagger.css"); c.CustomAsset("index",thisAssembly, "WebAPI.SwaggerExtensions.index.html");

  • queasyRider3
    queasyRider3 4 hours ago

    Hey Tim! So, can I just buy your "TimCo Retail Manager" as a course like those in www.iamtimcorey.com/courses , please? I don't trust the whole Patreon month-after-month thing; I'd rather just pay up front 1 time and move on. I would have left you this msg at your website but I did not see an option for that. Thanks

  • OneManShow
    OneManShow 4 hours ago

    Native English speakers: Settings> Playback Speed > 1.25

  • Sunil Anthony
    Sunil Anthony 6 hours ago

    I saw you create a demo project on dapper ORM. I've been using it for two years now and I love it. I'm no expert in it so I can't wait to see what hidden gem you show us. Your contribution to the .net world is invaluable.

  • Mike Rosol
    Mike Rosol 7 hours ago

    nice work!

  • Alinani silomba
    Alinani silomba 9 hours ago

    I just got on this resource it is really amazing priceless really

  • kathiravan kathir
    kathiravan kathir 9 hours ago

    How to publish the .net core app into Windows apache server

  • Barrosy
    Barrosy 9 hours ago

    I know from PHP website deployment I used to require a webserver and a domain name. How could I assign an old domain name I am still paying for to an exisiting project that has been deployed on my webserver (when accessing it by RDP)?

  • znasif
    znasif 9 hours ago

    I love hearing good tips and practices. As always, big fan.

  • Scott W. Vincent.
    Scott W. Vincent. 10 hours ago

    Very helpful, thanks! I've done some services with RabbitMQ using Topshelf to create the services. As I move to .NET Core I'm going to try out Worker Services instead.

  • Thuy Nguyen
    Thuy Nguyen 10 hours ago

    Hello Tim, how do I turn on the check marks in my Visual Studio Enterprise? Thanks!

  • Daniel Rachlin
    Daniel Rachlin 11 hours ago

    Hi, First, great video! Second, I'm trying to download dapper (I'm using Visual Studio 2013 Professional) and it fails and says "Could not install package 'Dapper 2.0.4'. You are trying to install this package into a project that targets '.NETFramework,Version=v4.5', but the package does not contain any assembly references or content files that are compatible with that framework. For more information, contact the package author. ", what can I do? and is there a similar library to dapper?

  • Jens Bråkenhielm
    Jens Bråkenhielm 11 hours ago

    Great vid! I see it's a rather old vid, but very pedagogic. I'd personally prefer to use a more predictive way of simulating work that can be done async - if possible. This way, it could show more clearly the benefits as well as being more determistic when comparing timings. But that's just a thought, the message is clear enough since the vid is very pedagogic. Good work!

  • Matteo Barbieri
    Matteo Barbieri 12 hours ago

    Great tutorial. This template will be very useful. Is there a way to let admin user see what the service is doing in a console? Just a way to show the service process without interact with it and without stopping it when closing the console

    • IAmTimCorey
      IAmTimCorey 11 hours ago

      No, but that's where logging can be helpful. You can write to a database or a file and then review those logs to see what is happening in real-time or near real-time. Just purge the logs on a schedule so you don't have too many.

  • Michael Rayappan
    Michael Rayappan 12 hours ago

    Hi Tim, Thank you for this video. I would like to clarify my doubts on Sqlite DB. I have been working on WPF with SQLite DB , create a setup project for taking build of the application. When I run the application after installing on my local machine, I am facing an issue of "SQLite.Interop.dll" when I am trying to read data from the database. I would also like to know how to retain the Sqlite database even after uninstalling the application on the Windows machine? Please help me and guide me if you have any video relating to it. Looking forward to hearing from you. Thanks in advance.

    • IAmTimCorey
      IAmTimCorey 11 hours ago

      You need to have the right dll in your folder for interop. That's all. You don't need SQLite installed on the machine. It runs based upon that dll.

  • Mohammed Alimam
    Mohammed Alimam 13 hours ago

    where do i should submit my answer?

    • IAmTimCorey
      IAmTimCorey 11 hours ago

      You don't. If your application does what the challenge says to do, you completed it.

  • Brian D
    Brian D 13 hours ago

    Hey Tim, am I able to bind my data from the SQLite database directly to winforms controls?

    • IAmTimCorey
      IAmTimCorey 11 hours ago

      Probably, but I've not done that in years. I HIGHLY recommend you don't do it. Otherwise you are tying your database directly to your UI in a tightly-coupled manner. You want a more loosely-coupled infrastructure for easier maintainability and security.

  • Lvl9chao
    Lvl9chao 14 hours ago

    What kind of class library did you create? I'm using VS2019 and when I type in Class Library, I'm given 4 different class library types: NET standard, Universal windows, NET framework, and NET core. Which should I choose in this case? Thanks.

    • IAmTimCorey
      IAmTimCorey 11 hours ago

      I created a .NET Framework class library. Good question.

  • Oleksii Potapov
    Oleksii Potapov 15 hours ago

    Thanks a lot for all your work! It's amazing!

  • Jeremy Flowers
    Jeremy Flowers 16 hours ago

    Why didn't you start by creating a project of type Windows Service (in C#)? (ah ... hard to debug)

    • IAmTimCorey
      IAmTimCorey 11 hours ago

      Yep, that's always been the problem with the Windows Service type. Now Worker Services have fixed that (they run as Console applications when in debug mode).

  • Dewald Groenewald
    Dewald Groenewald 16 hours ago

    Hi Tim, I am still quite new to learning C# specifically. I see there are some haters, but don't mind them. I appreciate your videos for not having a strange or annoying accent and also appreciate the real life implementations and examples as well as access to the source code. I appreciate that you take the time to explain things in detail and calling them on their correct name (eg. lambda expression). I also do not feel that you rush sentences or have trouble with articulation. Opinions are like a-holes, everybody has one. And that is just the opinion of some a-hole. Your content is superb and I hope to soon be able to contribute and take some of your paying courses. Thanks for your hard work, which makes my life easier.

  • avinash ranjan
    avinash ranjan 19 hours ago

    Hi, thanks for the such a nice tutorial on async await task, really give lot concept over it. I have one question to ask on this topic is that, can we use the async and await task concept in WebApi, if yes then, what is the benifit we get from it. And if no then why?

    • IAmTimCorey
      IAmTimCorey 11 hours ago

      Calling API endpoints are always async. We get more benefits from async in WebAPI when we call items internally in an async manner.

  • Osempu
    Osempu 22 hours ago

    when you gonna teach us to make our meth?? :(

    • IAmTimCorey
      IAmTimCorey 11 hours ago

      Watch Breaking Bad for that. Not my deal.

  • Kevin Grems
    Kevin Grems 22 hours ago

    Great video. One question though. I don’t like that the title property is duplicated in both classes. Couldn’t this same thing be achieved with an abstract base class and polymorphism?

    • Kevin Grems
      Kevin Grems 8 hours ago

      @IAmTimCorey Fair enough. What would you do (if anything) with the duplication of having a property like 'title' in both classes?

    • IAmTimCorey
      IAmTimCorey 11 hours ago

      It really depends. A base class isn't always the right case. In fact, I push to make developers prove it is the best way before I consider it. You only get one base class and then you are locked in.

  • Brendan
    Brendan 23 hours ago

    Wow, thank you so much. This is an amazing tutorial.. You are an awesome teacher - Subscribed.

    • IAmTimCorey
      IAmTimCorey 11 hours ago

      You are most welcome. Thanks for watching.

  • Loliex
    Loliex 23 hours ago

    Can you we have a signalR videos? thank you!

    • IAmTimCorey
      IAmTimCorey 11 hours ago

      It is on the suggestion list. I'll upgrade the priority.

  • Saad Rouane
    Saad Rouane Day ago

    Geat video Thanks!

  • Jean-Noel Seneque

    I love it! So easy to understand, covers everything I needed to know plus more..Thank you for sharing

  • VacSton
    VacSton Day ago

    You my sir are a life saver thanks :)

  • Chris Barker
    Chris Barker Day ago

    Excellent video Tim!

  • hchattaway
    hchattaway Day ago

    For the love of god, just take my money when I sign up over at Patreon! this was awesome. Sometimes getting back to the basic principles like this one is so important.. Depending on the project you're on, you can program with blinders on for way too long... These videos get the core principals back in your head and makes life so much easier! Thanks!

    • IAmTimCorey
      IAmTimCorey Day ago

      Awesome! I'm so glad they were helpful.

  • A123315
    A123315 Day ago

    Really good job. Thanks man!!

  • TheDumpap
    TheDumpap Day ago

    Really appreciate the work you are putting into your content! :)

  • It's legal to think

    I don't want my app to download the update in the background, and then keep the user on the old version UNTIL he chooses to reboot?! You need to put the user on hold, let him wait while the update is downloading, apply the update, and then boot up the newest version. What if you made breaking changes? And you let the user into your app? -No smart! Can Squirrel do this?

    • It's legal to think
      It's legal to think Day ago

      @IAmTimCorey Thanks for the answer. I just realize I asked you before, I and found out before, that this can be done with Squirrel. using (var mgr = new UpdateManager("...")){ UpdateInfo updateInfo = await mgr.CheckForUpdate(); if (updateInfo.ReleasesToApply.Any()) ReleaseEntry release = await mgr.UpdateApp(); if (release!=null) UpdateManager.RestartApp(); I need my app to check for updates at startup, wait time is no concern. I know Squirrel is build to apply updates silently, but is it possible to get progression info back from "await mgr.UpdateApp();" like 5% done, 40% done, etc. ?

    • IAmTimCorey
      IAmTimCorey Day ago

      It can but it will be a work-around. One of the goals of Squirrel is to not disrupt the user. When you start using the application, you don't want to have the application close and lose your work just so you can get a new version of the application. In general, if you want to force the user to get the update before they start working, you would need to build that into your app to check for the new version, wait for the download to be done, then restart the application before allowing the user to work. Squirrel might not be the best option for you then. As for the principle of why you would allow users to be on different versions, this is how most major browsers work as well as how a lot of other applications work as well. For instance, Chrome will update in the background and not even tell you. If you leave it open too long, it will eventually prompt you to restart to apply changes. If you are applying breaking changes to your application that cannot be used with the old version of your software, you might want to re-evaluate your development process. It shouldn't need to be quite that rigid in most cases. If it does, you might also build in a messaging system to your application that just says "when this flag is set, require a reboot" and then set it after you make a breaking change.

  • Sunil Anthony
    Sunil Anthony Day ago

    Tim, I'm new to autofac and saw someone doing this "builder.registercontrollers(typeof(mvcapplication).assembly)". Can you please explain why I need to register my controllers if I'm already registering my interfaces to concrete classes? Sorry, I normally use Ninject and saw the rich api features of autofac and want to learn it.

    • IAmTimCorey
      IAmTimCorey Day ago

      They are registering the MVC controllers with that line because then you don't have to manually add each controller to your DI system. MVC asks for concrete types. Normally that happens behind the scenes but when you add in Autofac (or any other DI), you need to manually register the containers as concrete types as well (even if you add interfaces to them and register them that way).

  • Ardavazt Terterian

    Great explanation. You are one of the few tutors who are clear in their explanation. Thank you, but why your online courses are so damn expensive? It would be amazing if you do some sales or provide sale coupons.

    • IAmTimCorey
      IAmTimCorey Day ago

      I do offer sales to my mailing list members and occasionally to the public as a whole once or twice a year. The cost is relative. If you are looking at it compared to a free course or a $10 Udemy course then yes, they are expensive. If you are looking at them in comparison to a college course then they are cheap. My Foundation in C# course series is essentially about 3 semesters worth of teaching (two and a half if you pushed it). Besides, not all training is created equal, just like not every car is the same. Just because a run-down Ford has four wheels and goes when you push the gas doesn't mean that a Mercedes should cost the same because it too has four wheels and goes when you push the gas.

  • Kees
    Kees Day ago

    This intro video is a timesaver; you make it all seem so easy. I have wasted time trying to learn this all by myself.

  • Amtoj Singh
    Amtoj Singh Day ago

    Hi Corey, I really loved this video, and am trying to implement it immediately into some practice Dropbox API codes. I just had one question if you would be so kind. When you are using Task.Run for RunDownload, you use an empty lambda operator [ Task.Run(() => DownloadWebsite(site))); ]. But why? Is the lambda operator necessary for Task.Run, even though it has no input parameters?

    • IAmTimCorey
      IAmTimCorey Day ago

      Task.Run needs to have an Action (a method that doesn't return a value) so that's why we have the empty parenthesis.

  • Ivandro Ismael Gomes Jao

    For those you can't find the 3.0 template, Use the *Preview version of Visual Studio*

  • Everett Taylor
    Everett Taylor 2 days ago

    Good intro - very concise

  • Sunil Anthony
    Sunil Anthony 2 days ago

    Whose brilliant idea was to name the file extension .razor? Why not name the freaking thing .blazor and done. Won't that make more sense?

    • IAmTimCorey
      IAmTimCorey Day ago

      Naming is hard but I agree, that is frustrating.

  • Tom C
    Tom C 2 days ago

    This video cleared up so many misconceptions I had around async methods and how to use them. Fantastic!!! Keep doing what you are doing because it is working!

  • Neil Richardson
    Neil Richardson 2 days ago

    Great video. Thanks for the heads up on such an application (Squirrel that is) existing. It appears it will solve the install issue I have for a widely used corporate application.

  • Festivejelly
    Festivejelly 2 days ago

    Interesting video but I couldnt get over how you're talking in some of the sentences. Like saying some of the words really quickly next to eachother. Makes it quite hard to follow.

  • Rory Stuart
    Rory Stuart 2 days ago

    I'm wondering how much control we have over the tables that Entity Framework creates. E.g Can we add columns to the user table and then create methods to return data from our new column? I see that 6 tables are created, can we delete any of them if they are not needed? Thanks

    • Rory Stuart
      Rory Stuart 2 days ago

      @IAmTimCorey Thank you, Tim.

    • IAmTimCorey
      IAmTimCorey 2 days ago

      Yes to adding columns, no to deleting them. The system expects certain columns to be available.

  • Raj Kumar
    Raj Kumar 2 days ago

    Nice Explanation with real Scenarios. Frankly, have seen links and videos, could not get clarity. this very very nicely explained.

  • İlkan Süslü
    İlkan Süslü 2 days ago

    Great Content. Hey Tim can you make a video "What have we done so far?(TimCo Retail Manager Video Serie)"

    • IAmTimCorey
      IAmTimCorey 2 days ago

      I can add that to the suggestion list. Thanks!

  • Manjeet Nandal
    Manjeet Nandal 2 days ago

    You are always awesome man! Great thanks for great sharing!

  • Krys H
    Krys H 2 days ago

    Thanks, Tim. What I always wanted to learn, is to how to create the installer for the desktop app. Could you make a video about it? Not only in .Net Core 3.0.

    • IAmTimCorey
      IAmTimCorey 2 days ago

      I will add it to the list. Thanks for the suggestion.

  • Damian Helizanowicz

    Hi! I am a newbie in C# and have some questions :D 1. If i wanna use field, property or function of some class i should do it only by interface? 2. There is a reason to not make base class BaseLibraryItem wchich have only LibraryID? 3. I would really love to see a big structure of for example OrganicLife that have humans, lions, plants, trees, bacteria and fungus - off course within reason ^^.

    • IAmTimCorey
      IAmTimCorey 2 days ago

      You can have properties or methods that are not specified in an interface. You just need to cast the type to the given class to use them. As for the base class, that is a possibility but you do need to exercise caution with base classes. They are used to indicate a relationship, not just a code-sharing mechanism. In this case, there is a relationship. However, the other thing to be careful of is that you only get one base class. So, if you decide that LibraryItem is what you want to go with, you can't have your DVD class inherit from the Movie base class.

  • Lvl9chao
    Lvl9chao 2 days ago

    Hi Tim, how do I implement unique insertion of records to mongodb? By default the _id is unique I know but I have a Users model class that I want the email address property to be unique. Is there a built-in mechanism in mongodb that prevents insertion of already existing email address fields for example? Appreciate any advice on this. Thanks.

    • IAmTimCorey
      IAmTimCorey 2 days ago

      Yes, you can set up a unique index: docs.mongodb.com/manual/core/index-unique/

  • spankymasterc
    spankymasterc 2 days ago

    Let’s say I have a powershell script that creates users assigned office 365 license and various other active directory things. Would creating a service that calls that powershell be a good way to run it from let’s say a button in an mvc application? Can my powershell be made into a service?

    • IAmTimCorey
      IAmTimCorey 2 days ago

      A service isn't directly controlled by user interfaces. So if you had a button in MVC, it would not talk directly to the service. However, you might have a service running that monitored a database table and when a new record was added, it would run the PowerShell script. As for replacing PowerShell with a service, it is probably possible but not advisable. PowerShell is the tool of choice for talking with servers usually. You can call PowerShell from C# though.

  • Enmanuelle Acuña
    Enmanuelle Acuña 2 days ago

    Excellent video!

  • Lvl9chao
    Lvl9chao 2 days ago

    really learned a lot from this async/await series!

  • pavankumar katakam
    pavankumar katakam 2 days ago

    Great article....

  • Gonkers44
    Gonkers44 3 days ago

    Looks like a great video for beginners.

  • Stuart Frankish
    Stuart Frankish 3 days ago

    Just a quick shout to say I'm really liking the practical series so far. I'm even thinking about introducing these types of challenges in my own dev team to help break up project work and keep things interesting.

  • Matthew Ito
    Matthew Ito 3 days ago

    Hi Tim! Thanks so much for all the videos that you make. I have been learning a lot from this series, and I really appreciate it. My question is that in my program, whenever p tries to get @id and put it into our model , instead an System.ApplicationException occurs that says "Attempting to cast a DBNull to a non nullable type". The program seems to be executing the SQL script and inserting the values into the database just fine. However, p does not seem to be getting the output value from @id for some reason. Any thoughts? Thanks again.

    • Matthew Ito
      Matthew Ito 2 days ago

      Every time that a record is inserted into my database, the id column auto-increments correctly. After looking at it again, I was able to find that I had an error in the stored procedure, and it works as it should now. Thanks for responding!

    • IAmTimCorey
      IAmTimCorey 2 days ago

      Is the ID column getting a value when you insert a record or is it getting a NULL value? It should be getting an auto-incrementing number.

  • Craig Sunderland
    Craig Sunderland 3 days ago

    OK, please don't shoot me for asking, but there was a lot of wording that I didn't fully understand in this, my question is, why create a window only to delete it later?

    • Craig Sunderland
      Craig Sunderland 2 days ago

      @IAmTimCorey Aaaah I understand. Clearing off a default file....

    • IAmTimCorey
      IAmTimCorey 2 days ago

      No one gets shot for asking questions. I'm glad you asked. I didn't create MainWindow.XAML. That window is the default window that gets created when you create a new WPF project, just like you get Form1 when you create a new WinForms project.

  • AmbientLight
    AmbientLight 3 days ago

    And this is where I am going to disagree. The reason you have duplication, because your remote API infrastructure and your persistence are sprinkled with your domain. But great lesson anyway :)

    • AmbientLight
      AmbientLight 2 days ago

      @IAmTimCorey And, as many many others, appreciate your effort to put this together. This is awesome. Thank you!

    • IAmTimCorey
      IAmTimCorey 2 days ago

      Thanks for the comment. I appreciate the kind disagreement (I'm being serious, not sarcastic).

  • Buttery Hips
    Buttery Hips 3 days ago

    Are you eating something in this video? Dude, you really need to work in your articulation

    • Jens Bråkenhielm
      Jens Bråkenhielm 11 hours ago

      Perhaps the problem is in the receiving end, since I find it easy to hear and understand. And I don't even speak English as a native language. No need to be rude.

    • IAmTimCorey
      IAmTimCorey 2 days ago

      It is something I work on.

    • Everel Morris
      Everel Morris 3 days ago

      That comment is unbecoming of a professional! You can move on to other videos in your free life. The man has a superb following and very positive effect on other. Sometimes some humans are just baffling, nothing is wrong with this man's enunciation and even so the video is a gift. .

  • Richie Pascale
    Richie Pascale 3 days ago

    Can you show how to use blazer to fill a table with sorting and paging.

    • James Heffer
      James Heffer Day ago

      @IAmTimCorey Creating a grid that has filtering and grouping is quite tedious. Consider using MatBlazor's grid component. It's free and offers sorting and filtering.

    • IAmTimCorey
      IAmTimCorey 2 days ago

      I can add it to the suggestion list.

  • Murad Kızılay
    Murad Kızılay 3 days ago

    Thank you bro

  • Mortaza Kamal Nourestani

    This guy is trying to drag it as much as you can so he could run more ads... Dude you don't have to repeat yourself 10 times just try to move forward if people don't know how to create a solution or project then they should not watch this at all

    • Barrosy
      Barrosy 14 hours ago

      @IAmTimCorey Hi Tim, don't worry about this guy. Your explanation is very clear and repeating things is not a bad thing. To make things clear and showing examples is the best thing you could have done. Hats to you. Cheers for showing this. Only thing I was looking for is OAuth but this is very helpful to people who are not entirely aware of alternative ways of authentication and authorization within ASP.Net MVC. Also I would like to know how to publish my ASP.Net MVC app (for testing purpose) to my remote server (using Windows RDP feature). I believe I require IIS to make this work but I am not entirely sure how. I already have a Domain Name ready (which I currently use for a PHP app through FTP).

    • IAmTimCorey
      IAmTimCorey 2 days ago

      Few things here. First, I don't run mid-video ads so the size of the video is actually detrimental to me, not a benefit. TheXvid looks at percentage watched on videos. The fact that I have a long video means I actually hurt that percentage since watching for the first minute is only about 1.5% of the video whereas if the video was 5 minutes, that would be 20% and be seen as more favorable by TheXvid. Second, teaching isn't about saying something once. You need to emphasize what is important. I try to give context around what I am teaching because the real world isn't a tutorial. You need the context to know how to plug something into a solution. Third, you aren't the gatekeeper of who gets to watch my videos. Don't be that person.

  • ComandanteJ
    ComandanteJ 3 days ago

    Web.config is the bane of my existence.

    • ComandanteJ
      ComandanteJ 2 days ago

      @IAmTimCorey Nice! just starting with core, so far i'm liking it a lot. Thanks for your awesome vids!

    • IAmTimCorey
      IAmTimCorey 2 days ago

      It definitely is a lot more friendly. Very easy overriding all the way up through Azure Key Vault is really nice and super-simple.

    • ComandanteJ
      ComandanteJ 3 days ago

      @GiGi fila I work with legacy .Net applications and web.config is a nightmare to maintain, specially between different enviroments. .Net core seems to be a lot more friendly in that regard.

    • GiGi fila
      GiGi fila 3 days ago

      what

  • Fatih mert
    Fatih mert 3 days ago

    Thanks a lot.

  • Ivandro Ismael Gomes Jao

    Thank you!

  • Amine Smahi
    Amine Smahi 3 days ago

    Amazing Thank you !

  • Kristian Petkov
    Kristian Petkov 3 days ago

    Hi Tim, congrats for the great videos you are making!!! Keep up the good work :) Do you have any plans to make a video how we can develop some application on Visual Studio for Windows and deploy it to a Linux OS?

  • Ashutosh Srivastava

    Please create a video on CQRS pattern

    • IAmTimCorey
      IAmTimCorey 2 days ago

      I will add it to the list. Thanks for the suggestion.

  • Iyyappan N
    Iyyappan N 3 days ago

    Wonderful. Thanks.

  • Алексей Андреев

    Tim, you are creating a really good interesting videos. But I want to view your videos on my phone, and your vs code to small for me. Would you be so kind to make 150 % for text inside visual studio? It will help me, and I hope not so hard for you. Thanks

    • IAmTimCorey
      IAmTimCorey 2 days ago

      My code is already at 18pt font. I try to keep it as large as possible but it makes it difficult to see anything on the screen if it is too large. I really can't make it bigger. The phone is just too small a device to accommodate. Sorry.

  • Justin Monzingo
    Justin Monzingo 3 days ago

    Some of my personal best practices 1) Use ternary operators for small if else statements 2) GET RID OF COMMENTED CODE THAT IS NO LONGER BEING USED AT ALL You can also use a Parallel.ForEach in C# if order doesnt matter

  • Jay K
    Jay K 3 days ago

    How do you install it as Linux daemon on Linux?

    • IAmTimCorey
      IAmTimCorey 2 days ago

      This should help: devblogs.microsoft.com/dotnet/net-core-and-systemd/

  • Delroy Miller
    Delroy Miller 4 days ago

    You are an excellent author and always do a great job presenting the material your in video tutorials. Always very clear, practical and concise. Nicely done!

  • Ivandro Ismael Gomes Jao

    30:53 - Make Service Worker => Windows Services

    • Ivandro Ismael Gomes Jao
      Ivandro Ismael Gomes Jao 2 days ago

      @IAmTimCorey Ah no-no, is just a note to myself, so when I come back next time I will know where to start watching. thanks though

    • IAmTimCorey
      IAmTimCorey 2 days ago

      Yes? Not sure what you are trying to say.

  • Rubens Manhães Bernardes

    Hi people! The video seens to be amazing, but, I am trying to follow the steps on this video but, the visual studio don't show me the option to create an application .net core 3.0. Visual Studio doesn't show me the option of .Net Core on Combo when the project are created Somebody can help me? I am using Visual Studio 2019 Enterprise Edition - version 16.2.5 I had alredy checked the "Use previews of the .Net core SDK" and of course had installed SDK 3.0.100 - preview9 I have checked the intalation of sdk using command line "dotnet --version" and the system show me "3.0.100-preview9-014004"

  • Scott Saccenti
    Scott Saccenti 4 days ago

    I've caught up! Now I have to wait like everybody else for the next drop :)

  • frayman's random things

    I disagree that you can't use git to store stored proc.. everything depends on how to deploy and your process.. in our solution we have a database project (that we don't build) just for the stored proc, views and functions.. because of how git works you can also be sure that the dates are always "today's" date for any change file therefore you can always pull the latest of all of those to run them and only them..

    • IAmTimCorey
      IAmTimCorey 4 days ago

      Not easily. Yes, you can do it. Actually, now it is actually really easy. Have you checked out SQL Server Data Tools (SSDT)? That will make your life even easier: thexvid.com/video/ijDcHGxyqE4/video.html

  • Ivandro Ismael Gomes Jao

    *dotnet new worker*

    • IAmTimCorey
      IAmTimCorey 2 days ago

      That's because it is a .NET Core 3.0 item, which won't be officially released until the end of September at .NET Conf. Sorry, I should have been more clear about that. You need the preview version of Visual Studio to use it with the tooling.

    • Ivandro Ismael Gomes Jao
      Ivandro Ismael Gomes Jao 4 days ago

      @IAmTimCorey I am using Visual Studio 2019 and there is no template for Service Worker, I had to run that command

    • IAmTimCorey
      IAmTimCorey 4 days ago

      Yep, that will do it. I'll be covering this more in-depth soon when I cover VSCode.

  • Scott Durrett
    Scott Durrett 4 days ago

    Fantastic! Your videos are great. Can you tell me what software you use to record your screen to make the video? Keep up the great work.

    • IAmTimCorey
      IAmTimCorey 4 days ago

      I use Camtasia to record my screen.

  • Mr Bender
    Mr Bender 4 days ago

    Hi, Tim Firstable it's amazing people like you exist and share knowledge that way, i will support you on Patreon very soon. May i know however why you do not use Fody.PropertyChanged: github.com/Fody/PropertyChanged Basically it let us implement property change with minimal syntax, so we get our code: From this: public string FirstName { get { return _firstName; } set { _firstName = value; RaisePropertyChanged(); } } To this: public string FirstName { get; set; }

    • IAmTimCorey
      IAmTimCorey 4 days ago

      I'm careful about how much I rely on third party packages. Too many and it makes it difficult to upgrade over time. That is a nice package though.

  • Timothy Western
    Timothy Western 4 days ago

    If you were like me, and had User EmailAddress field in the User Table as User, and User Lookup stored procedure returning Email As EmailAddress, yeah... discovered I had to add an [u].Email as EmailAddress or go back and change that.

  • Amit Sharma
    Amit Sharma 4 days ago

    Sir Your voice is marvelous , Every Student pray to get Teacher Like You, Sir I want to learn Xamarin but did not find any good tutorial about this can you provide some tutorial about Xamarin to get Started

    • Amit Sharma
      Amit Sharma Day ago

      @IAmTimCorey Thanks Sir for quick reply

    • IAmTimCorey
      IAmTimCorey 4 days ago

      I am going to be covering Xamarin in a couple months.

  • Justino Vegas
    Justino Vegas 4 days ago

    Great series. Can one easily integrate WebAPI into this (non entity?) approach? Thanks!

    • IAmTimCorey
      IAmTimCorey 4 days ago

      Yep, you can integrate WebAPI with this without an issue (using Dapper).

  • Bent Rasmussen
    Bent Rasmussen 4 days ago

    Hm, a text file may be OS independent but it would be nice to log to the event log on Windows, so the worker adapts nicely to its host environment.

    • IAmTimCorey
      IAmTimCorey 4 days ago

      There are things you can do to log to event sinks like event log.

    • IAmTimCorey
      IAmTimCorey 4 days ago

      There are things you can do to log to event sinks like event log.

  • Deepon Gupta
    Deepon Gupta 4 days ago

    Is This same as Windows Service?

    • 789blablajaja
      789blablajaja 2 days ago

      @IAmTimCorey Doesn't the defining of the service worker as Windows service inside the code go against the portability? Or can we still use the dll as a daemon, despite the UseWindowsService() call?

    • IAmTimCorey
      IAmTimCorey 4 days ago

      It can be but it is more than that. It is a service that can run as a Windows Service or it can run on Mac or Linux or even in Azure as well.

  • EricHarmon67
    EricHarmon67 5 days ago

    What would be the best way to communicate between a separate UI app and the Windows worker service? Especially with WCF not being ported? I’m envisioning a WPF or WInForms app that could, say, change settings for the service on the fly (such as that 5000 ms delay, for example).

    • Todd Moon
      Todd Moon Day ago

      Lots of options. You can do passive communications with a database, the file system or the windows registry. More active methods would be named pipes via IPC Pipe Services, message queuing (MSMQ, etc) or even hosting a web server within your service.

    • IAmTimCorey
      IAmTimCorey 4 days ago

      Change a database value and then have the Worker Service check the database occasionally. You don't want a direct tie to a UI.

  • LoveYouPakistan
    LoveYouPakistan 5 days ago

    Really helpful video, thanks for uploading such good stuff

  • Raw Coding
    Raw Coding 5 days ago

    I'd say be careful with the explanation for SRP, good effort thou. Aggregating functions responsible for a type of functionality in to a class is hardly SRP. SRP's reason to change should come from 1 source. Why would you need to change the welcoming message or the validation rules? who makes the request for change? Who wants your software to change? users, management etc.. people who use the software being able to identify groups of users and segregate functionality based on these groups is what SRP is about, not identifying functionality that can be categorized as similar and aggregated in a class with small functions. And scrolling in classes is not a factor. Mid sized software will have 100's of scrollable classes.

    • Raw Coding
      Raw Coding 4 days ago

      @IAmTimCorey Agree that scrolling is an indication to look at refactoring. But I would still lean towards looking at the source of potential change to software as an indication to use SRP. If I could state it more clearly by saying I have 2 files that handle displaying order information (1 for Managers and 1 for Customers) Management might want to see more information than the Customer (Management would also have the privilige of requesting change directly), if displaying orders information were just 1 file that would mean there are 2 reasons to change Managers and Customers might want something. You probably already know this it's just you didn't take your explanation that way. Thank you for your reply as well and keep up the good work!

    • IAmTimCorey
      IAmTimCorey 4 days ago

      I would disagree that the type of user that will make the change is important. It is single reason to change, not single source of change. As for scrolling, it isn't a factor, it is an indicator. If your class scrolls, that's a good time to check SRP. It doesn't mean you are doing anything wrong, but it is a good time to check in.

  • Raw Coding
    Raw Coding 5 days ago

    A little bit slow pace for my liking but you are covering a lot of ground here nice work Tim! This way is a lot nicer than the current 2.* way.

  • Connor Heidema
    Connor Heidema 5 days ago

    Great stuff!

  • Dan Rullo
    Dan Rullo 5 days ago

    @IAmTimCorey, I was wondering if you could comment on whether or not sc.exe is the best way to install services. I used to use it a lot years ago, but then got away from it in favor of InstallUtil.exe from the .NET Framework directory. Will that even work with this type of service? If we were to use it, would we need to add an installer class as we did with .NET standard services? I liked that approach because it allowed a lot of flexibility in configuring the service during design time (service description, start type, logon credentials, etc.). Is there a similar method that is supported/recommended for modern worker services? Using sc.exe feels like going back in time to NT 4 and it seems somewhat limited. Am I wrong?

    • IAmTimCorey
      IAmTimCorey 4 days ago

      I believe sc.exe is the way to move forward. You can do most everything you can do with InstallUtil.exe I believe.

  • Vinay Palaksha
    Vinay Palaksha 5 days ago

    Tim, syntax for creating an instance of a delegate is same as that for class, so I'm curious to know is delegate really a class behind the scenes?

    • Vinay Palaksha
      Vinay Palaksha Day ago

      Tim,That is ok

    • IAmTimCorey
      IAmTimCorey 4 days ago

      I don't know the deep underlying structure. I don't believe so, but I'm not totally sure.

  • Manish Choudhary
    Manish Choudhary 5 days ago

    Hi Tim! Thanks a lot for all the videos. Do you have a series of .net core learning for beginners? I tried to search but couldn’t find. Thanks

    • IAmTimCorey
      IAmTimCorey 4 days ago

      I have a getting started with .NET Core course: www.iamtimcorey.com/p/getting-started-with-net-core/

  • _aurel_rtl
    _aurel_rtl 5 days ago

    Great Tutorial, Tanks so much man!

  • John Doe
    John Doe 5 days ago

    Hi Tim, I am a lil bit confused on what the web API is used for. Is it used like a Database or something? Please pardon my ignorance

    • John Doe
      John Doe 4 days ago

      @Tony Watkins Thank you

    • John Doe
      John Doe 4 days ago

      @IAmTimCorey Thank you

    • Tony Watkins
      Tony Watkins 4 days ago

      John - it's a separate "component" that acts as a flexible back end to potentially any number of front ends; the web part means it can be called via web technologies. You can think of it as a data resource - though it may not be using a database at all. The point is it's a flexible interface into a resource - so you can expose any number of services via a web api. There are lots of free ones that you can search for on the internet to get a handle on what sort of things they can provide - from sunrise/sunset times, to simple translations to temperature conversions to surfacing deeply hidden data sources that have no interfaces at all to external consumers. HTH

    • IAmTimCorey
      IAmTimCorey 4 days ago

      No worries, good question. WebAPI allows you to expose your data in a controlled manner. So, instead of giving people direct access to your database, you get to put your business logic in front of your database. WebAPI then allows you to make a smaller UI. It also allows you to build more than one UI. So, you can create a mobile app to talk to the same API as your WPF app. You can see an API in action in the TimCo Retail Manager series.

  • Andrew NL
    Andrew NL 5 days ago

    Im new to full stack development, my question is how do i render the data from my sql db to a html file.

    • Tony Watkins
      Tony Watkins 4 days ago

      I think you'd want to start from an MVC or razor pages project Andrew. WebAPI isn't the right one to render to html, unless you want to set up a multi project solution. The WebAPI project then becomes a separate component if you will that can deliver data to a number of front ends - such as a WPF windows application, or a web front end written in any number of different technologies or languages - but as you say you're quite new to full stack development - I'd start with a project based on razor pages. Hope that helps...

    • Andrew NL
      Andrew NL 4 days ago

      @IAmTimCorey also a good video on how to retrieve data through a mvc would be awesome to see.

    • Andrew NL
      Andrew NL 4 days ago

      Thanks, have you ever used a codeontime or radzen? These rapid application development. Out of curiosity.

    • IAmTimCorey
      IAmTimCorey 4 days ago

      You would need to build an MVC site to display this as HTML. If you wanted to have a HTML file you can save (not just generated on the fly), you would need to build some type of tool for that.