The CSharp examples target .NET Standard 2.0 (for class libraries) and .NET Core App 3.1 (for applications), per Microsoft guidelines for maximum portability amongst all .NET implementations (.NET Core, .NET Framework, Mono, Xamarin etc). However there are situations where users still desire to use .NET Framework (without relying on the .NET Standard compatibility-mode or when using a .NET Framework version that is too old to support it) and for the time being, all Windows builds include a pure .NET Framework build of dcpssacs.dll.
Depending on the Visual Studio version and deployment options, opening CSharpExamples.sln may not trigger Visual Studio to re-target the example projects to the available .NET Framework versions (or provide the option to manually select it in the project properties). This happens on VS 2017 V15.7.2 but different variations may occur on other versions. It is recommended to upgrade to the latest available Visual Studio version, alternatively the following manual steps should work:
Issue: When opening project properties, the .NET target framework dropdown is empty or allows selecting a .NET Standard version only; .NET Framework versions are not available despite being installed on the system.
Solution:
– Make sure the project properties UI form is closed.
– Right-click the relevant project and select the option to edit the csproj file.
– In the XML editor, remove the TargetFramework element contents, eg. replace “<TargetFramework>netcoreapp3.1</TargetFramework>” by “<TargetFramework></TargetFramework>” and save the file.
– Open the project properties UI form. The .NET Framework versions available on the system should now be listed in the .NET target framework dropdown.
Note the dcpssacs assembly reference in the example projects is for the .NET Standard 2.0 dll, it can be changed to the .NET Framework dll provided in eg. $OSPL_HOME/lib/net461/dcpssacs.dll.