.NET Standard Deep Dive

Play .NET Standard Deep Dive
Sign in to queue


Join Immo Landwerth and Rich Lander on a deep dive into .NET Standard.

Here is what's covered:

* [1m] Why do we need .NET Standard?
* [6m] What is .NET Standard?
* [10m] .NET Standard as a spec
* [10m] .NET Standard 2.0
* [16m] DEMO - Moving .NET Framework code to .NET Standard 2.0
* [19m] DEMO - Referencing .NET Framework packages from .NET Standard 2.0
* [23m] DEMO - NuGet and "Warning as Errors"
* [24m] DEMO - Understanding .NET Standard versions
* [28m] Choosing between .NET Standard versions
* [30m] What about Portable Class Libraries (PCL)?
* [31m] DEMO - How can you reference APIs not in .NET Standard?
* [44m] Closing

For more details, checkout our FAQ:



.NET, OSS, .NET Core



The Discussion

  • User profile image

    Thank you for this video. I just looked over the FAQ.  

    I agree with this statement to a degree:

    "We don't plan on adding any specific providers to .NET Standard as their applicability varies (for example, it's a highly unlikely scenario to use the SQL Server client from an iOS device"

    I would not even think of coding direct to SQL Server on iOS.  However, I am trying to port my backend services to Linux, and so far it has been a show stopper.

    I have a simple webservice that works generically.  My client app calls a single method with a script name and some parameters.  The the backend method loads the script which defines a table, sql select statement, adds the parameters and calls the data adapter to fill the dataset. Then it returns the data to the client. Once the client changes the data it calls a single method on the backend passing a script name and the dataset. The script calls methods to setup the DataAdapter with table name and sql select.  SqlCommandBuilder then produces the the insert, update and delete statements.  SqlCommandBuilder is not yet available under .Net Standard 2.0.

    This simple web-service fuels our in-house app development by providing unlimited data access without the need to hard-code the data access layer.
    Hoping .Net Standard 2.1 is more complete.

  • User profile image

    learned lot..

  • User profile image

    Thanks. Very informative and clear.

  • User profile image

    @DonaldA: You can either use .NET Core or .NET Full Framework as the target for the library that you are developing. SQL Client is available there.

  • User profile image

    I have a 4.6.1 class library with entity framework DB connections. I want to use that with .NET Core 2.0, is that possible or will I have to convert the class library to .NET Standard?

  • User profile image

    I have a 4.6.1 class library with entity framework DB connections. I want to use that with .NET Core 2.0, is that possible or will I have to convert the class library to .NET Standard?

    @Lars: sorry for the delayed answer. It depends on what "flavor" of Entity Framework you are currently using. Entity Framework 6 was built for .NET Framework and does not currently support .NET Standard or .NET Core. If you are already using Entity Framework Core, you should be able to move your code between .NET Framework and .NET Core without changes.

    If you are currently using Entity Framework 6 (or previous versions) but need to run on .NET Core, then moving your application to Entity Framework Core is worth considering, but beware that doing that is a porting exercise and not a simple version update.

    There is a comparison and recommendations for porting between the two in our documentation: https://docs.microsoft.com/en-us/ef/efcore-and-ef6/

    Hope this helps.

  • User profile image

    The people in the video were understandable. However, they did not go through the structure of a .NET Standard project in detail.

    MS still has a long way to go to make this easy to use which is why many devs find it hard to comprehend.

    Edit the .proj file directly for multi-targeting? C'mon...where's the UI support?? VS has to keep up with the folks doing this redefinition. I might as well use Sublime or VS Code instead, at least it isn't confusing.

    And how does multi-targeting relate to .NET Standard? MS is just using .NET Standard projects now as a façade to ease packaging, it seems...


Add Your 2 Cents