S107 - Build great libraries using .NET Standard

Sdílet
Vložit
  • čas přidán 31. 07. 2024
  • Want to create great .NET class libraries? Confused about .NET Standard, .NET Core, and .NET Framework? Watch this talk to learn how you can easily support multiple platforms with .NET Standard and no compromises, thanks to via multi-targeting. We'll also cover the other aspects, such as versioning, strong naming, and binding redirects.
  • Věda a technologie

Komentáře • 24

  • @GaryJohnWalker1
    @GaryJohnWalker1 Před 5 lety +4

    So useful, especially around nuget and versioning, as 80% of (our) dev is probably in libraries yet gets overshadowed in tutorials by the ui/specific business logic aspects like asp.net and standard apps.

  • @northshorepx
    @northshorepx Před 4 lety

    Extermely useful. I learned more in 45 mins than hours of reading

  • @k3davis
    @k3davis Před 5 lety +1

    0:46 seconds in and the camera work has already convinced me I've just jumped from an airplane

    • @ImmoLandwerth
      @ImmoLandwerth Před 5 lety

      Hey, Michael Bay is a great camera man. Next time, we'll have bigger budget and will also have some explosions :-)

  • @TonyHenrique
    @TonyHenrique Před 5 lety +1

    Nice!

  • @AdamsTaiwan
    @AdamsTaiwan Před 5 lety

    Changed all my projects which includes client wpf apps, command line app, windows service and web apps. to version 4.7.2. It also automatically checked Auto-generate binding redirects.
    When I try to run the web app I get: BadImageFormatException: Could not load file or assembly 'System.Net.Http'
    I see on Stack overflow that there are many problems with this. If I remove the redirect my web app works.
    So what is the correct way to handle this problem?

  • @iGexogen
    @iGexogen Před 5 lety +2

    GitVersioning looks very useful for me, but I don't want to specify major/minor version in version.json file (more files - more complexity), I want them to be parsed from my git branch name, so library will require no configuration at all. Is this possible, or I'am really stuck to this version.json file?

    • @ImmoLandwerth
      @ImmoLandwerth Před 5 lety +2

      Not sure. I've asked the author (Andrew Arnott) on Twitter. twitter.com/terrajobst/status/1042536973179613184

    • @AndrewArnott
      @AndrewArnott Před 5 lety +3

      Great question. Nerdbank.GitVersioning uses the version.json file approach to support build reproducibility. A particular commit may appear on 'master' while you're developing it, for example, and later find itself on a v1.2 branch, and later a v1.2.4 branch. Yet if you build that particular commit again later or one based on it (for servicing, for example), you probably want a version number computed that is based on the versioning scheme you used at the time it was originally built rather than the name of the branch you happened to have created and are building from. Having a version.json file resolves this completely because the commit has built within itself the version that you're working on. It's also nice when you're looking at git blame or other views of arbitrary commits with no branch directly associated with it, you can always follow that commit to the version.json file to know what release includes it.
      The workflow becomes that each time you want to bump the major.minor version number, just touch the file (perhaps right _after_ branching off servicing for the prior version).

    • @iGexogen
      @iGexogen Před 5 lety +2

      Thanks for your relpy. I think this feature can be made optional and unobtrusive (maybe even the default behaviour if there is no version.json in project directory structure), it can change major/minor version only if there is no ambiguity in commit (commit to single branch whose name exactly mathes the pattern). Default pattern can be something like (\d+)\.(\d+)[-\w]*

  • @happy_burger
    @happy_burger Před 5 lety +4

    those red squiggles in VS when the solution builds fine... drive me nuts

    • @ImmoLandwerth
      @ImmoLandwerth Před 5 lety

      Haha, sorry about that :-)

    • @happy_burger
      @happy_burger Před 5 lety

      Immo Landwerth oh its not about you, I get these on stable VS builds all the time :)

  • @iGexogen
    @iGexogen Před 5 lety

    Are we going to see Workflow Foundation official port to .NET Core some time in future? Unofficial CoreWF looks raw and missing visual editor, it's very dissapointing(

    • @ImmoLandwerth
      @ImmoLandwerth Před 5 lety

      We currently have no plans to port WF to .NET Core.

  • @kosiarzpl8688
    @kosiarzpl8688 Před 5 lety

    Do you have a link to the book he is talking about at the end of the viddeo (44:20)?

    • @Crossbow123
      @Crossbow123 Před 5 lety

      www.amazon.com/Framework-Design-Guidelines-Conventions-Libraries/dp/0321545613

    • @ImmoLandwerth
      @ImmoLandwerth Před 5 lety

      The book is called "Framework Design Guidelines" by Krzysztof Cwalina. www.amazon.com/dp/0321545613

  • @Miggleness
    @Miggleness Před 5 lety

    Is Windows running on a VM or Bootcamp?

    • @ImmoLandwerth
      @ImmoLandwerth Před 5 lety +1

      Bootcamp. VS doesn't like sharing machines ;-)

  • @JohnDoe-ck3un
    @JohnDoe-ck3un Před 5 lety

    Nicht schlecht, der deutsche Akzent ist fast nicht mehr zu höhren. So gut will ich auch mal werden :)

    • @ImmoLandwerth
      @ImmoLandwerth Před 5 lety +1

      Hah, der deutsche Akzent wird vermutlich nicht mehr sterben. Es sei denn, ich nehme Training wie Christoph Waltz, aber das scheint mir zu viel arbeit zu sein ;-)

  • @oladipotimothy6007
    @oladipotimothy6007 Před 2 lety

    msdn docs are really not well placed. The tips and tricks should be easily accessible, and also be a prerequisite for all c# dev.

  • @ian_b
    @ian_b Před 3 lety

    Why is the cameraman wandering around like this? It's seriously distracting.