我正在尝试运行ASP。NET MVC(模型-视图-控制器)项目从TFS (Team Foundation Server)源代码控制检索。我已经添加了所有程序集引用,我能够成功地构建和编译,没有任何错误或警告。

但是我在浏览器中得到以下错误:

找不到路径的一部分 “C: \ B8akWorkspace \ B8akProject \ B8akSolution \ B8AK.Portal \ bin \ roslyn \ csc.exe”。

以下是错误页面的完整截图。

经过几天的研究,我了解到Roslyn是一个提供高级编译特性的. net编译器平台。但是,我不明白为什么我的构建试图找到\bin\roslyn\csc.exe,因为我没有配置任何与roslyn相关的东西。我也没打算让罗斯林参与我的项目。


当前回答

现在回答已经太晚了,但我仍然在发帖,希望能帮助到任何人。 以下步骤修复了我的错误:

删除包文件夹 开放和 重建 观察到NuGet包被恢复,但是bin\roslyn没有被创建 卸载项目 重新加载项目 重建 观察bin\roslyn现在已经创建。

其他回答

在我的例子中,我只需要转到Visual Studio Solution Explorer (web应用程序项目)中的bin目录,并直接包括roslyn项目。右键单击文件夹并选择“包含在项目中”。并再次检入解决方案以触发构建过程。

默认情况下不包括roslyn文件夹。

为了防止构建也将Roslyn文件复制到bin目录,您还必须注释掉位于Web应用程序项目顶部的这一行:

<!--  <Import Project="..\..\..\DAS\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.1\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props" Condition="Exists('..\..\..\DAS\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.1\build\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.props')" /> -->

仅供参考……

截至2017年8月31日,升级到Microsoft.CodeDom.Providers.DotNetCompilerPlatform 1.0.7是有效的。

我有一个项目在VS2019中运行,然后我第一次打开(在VS2019中)另一个项目,我得到了上述问题。我所做的如下:

我关闭正在运行的项目, 清理并重新构建新项目

只有一点没有。2号不适合我。

安装nudget包:Microsoft.CodeDom.Providers.DotNetCompilerPlatform.BinFix https://www.nuget.org/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform.BinFix/1.0.0