我在 Windows 10 上引用了 aspnet核心 完整.net框架4.6.1 的解决方案,引用了其他csprojs同样的解决方
所有项目都使用 project.json 作为nuget(而不是package.config)。
昨天一切都按照预期工作,从visual studio编译,或使用msbuild从命令行编译。 在将我的aspnet核心1.0.1更新为1.1之后,使用visual studio编译的一切都很好,但是当我使用msbuild构建时,构建成功,但是使用
启动webserverdotnet run projectfolder
红隼,更确切地说是 microsoft.aspnetcore.hosting 会引发异常:
System.BadImageFormatException: Could not load file or assembly 'System.Runtime.InteropServices.RuntimeInformation, Version=4.0.1.0...
这是一个已知的错误吗?在1.1版本之后也可以使用msbuild吗?
提前谢谢你,
安德烈
答案 0 :(得分:2)
我遇到了同样的问题,并且能够通过明确指定要构建的项目来解决此问题。尝试...
msbuild.exe solutionfile.sln /t:ProjectName
其中ProjectName
是您要启动的项目(更多详细信息如何指定项目 - https://msdn.microsoft.com/en-us/library/ms171486.aspx?f=255&MSPPError=-2147217396)。
在我的情况下,它取决于msbuild如何选择构建项目依赖(使用project.json的经典类库)。如果它在构建xproj之前选择构建它们,那么它会失败并出现您提到的相同异常。当它们在xproj构建的上下文中构建时,它可以工作。请参阅您在gihub问题https://github.com/aspnet/Home/issues/1824中的回复,了解更多详情和简单版本。
答案 1 :(得分:0)
我无法在您的github示例中重复,但我确实解决了直接针对项目的问题。 在我的情况下(我想知道为什么)我无法使用/ t:ProjectName,我不得不使用
msbuild ./Folder/ProjectName.xproj