0

我正在尝试使用 DNX beta4 在 Mac OS X 上运行 Thinktecture IDP v3 ( https://github.com/IdentityServer/IdentityServer3 )。

为此,我使用了他们的一个示例:https ://github.com/IdentityServer/IdentityServer3.Samples/tree/master/source/AspNet5Host

如果我在 Windows 上运行示例,一切都很好。

在 OS X 上,使用 Mono 4.0.1 和 DNX beta4,当我运行时:

mono .../.dnx/runtimes/dnx-mono.1.0.0-beta4/bin/dnx.mono.managed.dll . kestrel

我收到以下错误:

[0x7fff74d46300:] EXCEPTION handling: System.DllNotFoundException: api-ms-win-core-file-l1-2-0.dll
[0x7fff74d46300:] EXCEPTION handling: System.EntryPointNotFoundException: ReadFile
[0x7fff74d46300:] EXCEPTION handling: System.EntryPointNotFoundException: LoadLibraryExW
[0x7fff74d46300:] EXCEPTION handling: System.Reflection.ReflectionTypeLoadException: The classes in the module cannot be loaded.
Started

我正在尝试找出api-ms-win-core-file-l1-2-0.dll是什么以及需要什么。单核细胞增多症?Thinktecture 包?

我的 project.json 如下:

{
  "webroot": "wwwroot",
  "version": "1.0.0-*",

  "dependencies": {
    "Kestrel": "1.0.0-beta4",
    "Microsoft.AspNet.Server.WebListener": "1.0.0-beta4",
    "Thinktecture.IdentityServer3": "1.5.0",
    "Microsoft.AspNet.Owin": "1.0.0-beta4",
    "Microsoft.Owin": "3.0.1",
    "Microsoft.AspNet.DataProtection": "1.0.0-beta4",
    "Microsoft.AspNet.Diagnostics": "1.0.0-beta4"
  },

  "commands": {
      "web": "Microsoft.AspNet.Hosting --server Microsoft.AspNet.Server.WebListener --server.urls http://localhost:5000",
      "kestrel": "Microsoft.AspNet.Hosting --server Kestrel --server.urls http://localhost:5005"
  },

  "frameworks": {
    "dnx451": { }
  },

  "publishExclude": [
    "node_modules",
    "bower_components",
    "**.xproj",
    "**.user",
    "**.vspscc"
  ],
  "exclude": [
    "wwwroot",
    "node_modules",
    "bower_components"
  ]
}
4

1 回答 1

1

AFAIK Mono 4 和 ASP.NET Beta 4 之间存在不兼容性。使用 Mono 3.x 和 Beta 4 - 或 Mono 4 和 Beta 5。

于 2015-05-16T06:46:52.837 回答