Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/260.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将Win32 DLL调用到netcoreapp测试项目中_C#_Winapi_Dll_.net Core - Fatal编程技术网

C# 将Win32 DLL调用到netcoreapp测试项目中

C# 将Win32 DLL调用到netcoreapp测试项目中,c#,winapi,dll,.net-core,C#,Winapi,Dll,.net Core,我有一个“旧的”win32 dll,我需要将它加载到我的单元测试/集成测试项目中以进行一些测试处理 此dll仅被引用为 private static extern ushort SSV_InitTrace( [MarshalAs(UnmanagedType.LPStr)]string fileName, [MarshalAs(UnmanagedType.LPStr)]string mode, ushort module, byte level)

我有一个“旧的”win32 dll,我需要将它加载到我的单元测试/集成测试项目中以进行一些测试处理

此dll仅被引用为

  private static extern ushort SSV_InitTrace(
        [MarshalAs(UnmanagedType.LPStr)]string fileName,
        [MarshalAs(UnmanagedType.LPStr)]string mode,
        ushort module, byte level);
这是一个在win32平台上运行的“经典”xUnit测试项目。 然而,在我的集成测试中,我需要加载来自我的解决方案的一组netcore程序集。 我这样定义我的project.json:

 "dependencies": {
  "xunit": "2.2.0-beta2-build3300",
  "CommonTools": "1.0.0",
  "FluentAssertions": "4.6.1",
  "SESAMEngineFacturation": "1.0.0",
  "Moq": "4.6.25-alpha",
  "DALCore": "1.0.0",
  "BusinessCore": "1.0.0",
  "dotnet-test-xunit": "2.2.0-preview2-build1029",
  "System.Reflection.Extensions": "4.0.1",
  "SESAMReglementaire": "1.0.0-*",
  "SESAMReglementaire.Tests": "1.0.0-*",
  "System.Runtime.InteropServices": "4.1.0",
  "System.Linq.Expressions": "4.1.0"
 },
"frameworks": {
  "netcoreapp1.0": {
    "dependencies": {
     "Microsoft.NETCore.App": {
      "type": "platform",
      "version": "1.0.0"
    },
    "System.Reflection.TypeExtensions": "4.1.0",
    "System.Diagnostics.TraceSource": "4.0.0"
  },
  "imports": [
    "dnxcore50",
    "portable-net45+win81"
  ]
 }
}
当我点击dllimport时,我遇到了一个badImageFormatException。 如何强制netcoreApp在win32模式下运行? 我已经试过了

  "buildOptions": { "platform": "x86" }
进入netcoreapp部分,但如果我这样做,测试将不再显示在VS测试资源管理器中

我怎样才能让经理完成这项工作