Rhino Compute VS code / net core

I tried following the C# getting started guide but adapted the steps to use dotnet commands.

When I try to run the meshed sphere sample I get the below error:

Unhandled Exception: System.DllNotFoundException: Unable to load DLL 'librhino3dmio_native' or one of its dependencies: The specified module could not be found. (Exception from HRESULT: 0x8007007E)
   at UnsafeNativeMethods.ON_Brep_FromSphere(Sphere& pConstSphere)
   at Rhino.Geometry.Sphere.ToBrep()
   at RhinoComputeTest.Program.Main(String[] args) in C:\Users\Hugh.Groves\Documents\VS_Code_Projects\RhinoComputeTest\Program.cs:line 18

I’m assuming that this is because my dotnetcoreapp2.2 is cross platform and I need some platform specific (windows) libraries to get it running. Any idea how I can do this?

My .csproj file looks like below:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp2.2</TargetFramework>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="newtonsoft.json" Version="12.0.2" />
    <PackageReference Include="Rhino3dmIO.Desktop" Version="7.0.19260.11525-wip" />
  </ItemGroup>

</Project>

Rhino3dmIO hasn’t been tested on .NET core. I’ve been working on a new version of Rhino3dmIO which is simply called Rhino3dm and is available on github at

We have successfully compiled a .NET core version for Amazon Linux, but haven’t done much testing beyond that point.

See also Rhino3dm .NET source available!

Hi @stevebaer , I was developing an app using .NET Core but just noticed Rhino.Compute currently requires Rhino3dmIO.Desktop v7+ … bit of a nuisance as i have many NET Core components … is there any plan for Compute to work with the Rhino3dm .NET Core library anytime soon? Should I hold my breath for this?

Rhino3dmIO is being replaced by Rhino3dm which is also available on nuget. Please switch over to using Rhino3dm; you shouldn’t have any compile issue when switching from one to another.

Rhino3dm already works with .NET Core. If it isn’t working for the scenario that you are trying to work with, we should be able to fix it.

2 Likes