我在github上的coreclr存储库中找到了NativeCallableAttribute的这种实现。看起来它是在2年前添加的,您可以找到单元测试,表明它的工作方式与Unmanaged exports for .Net Framework类似。
我创建了一个新的.Net核心2.0项目,NativeCallableAttribute
命名空间中没有System.Runtime.InteropServices
。是否有一些nuget包我必须添加才能使用这个类?我已经尝试过nuget package System.Runtime.InteropServices
但仍缺少该属性。
答案 0 :(得分:4)
NativeCallableAttribute
位于System.Private.CoreLib
汇编中。只需从您的项目中引用它,并为using
命名空间添加System.Runtime.InteropServices
指令。
<强>更新强>
我从哪里获得System.Private.CoreLib?在nuget上找不到它 VisualStudio中的AddReference对话框没有我的.Net Core 项目
我已经使用ReSharper添加了程序集引用。您可以通过在csproj文件中添加以下部分来完成相同的操作:
<ItemGroup>
<Reference Include="System.Private.CoreLib">
<HintPath>C:\Program Files\dotnet\shared\Microsoft.NETCore.App\1.0.5\System.Private.CoreLib.dll</HintPath>
</Reference>
</ItemGroup>