相关疑难解决方法(0)

找不到文件... bin\roslyn\csc.exe

在 Visual Studio 2017 中,当点击Ctrl+F5运行我的 ASP.NET Framework Web API 服务器时,我得到:

找不到文件... bin\roslyn\csc.exe:

应用程序中的服务器错误“/”。

Update-Package Microsoft.CodeDom.Providers.DotNetCompilerPlatform -r 在包管理器控制台中运行不是永久修复,因为当包文件丢失时服务器错误再次出现。我怎样才能一劳永逸地摆脱这个错误,以便在我重新打开、构建和运行我的 Visual Studio 解决方案时自动(并静默)重新安装所需的包?


重现错误的代码:http : //henke.atwebpages.com/SrvrErr-reproduce.zipfile 1
(原文来自 https://github.com/aspnet/AspNetDocs/tree/master/aspnet/web-api/overview/advanced /calling-a-web-api-from-a-net-client/sample/server/ProductsApp )


1请将扩展名从 重命名zipfilezip

.net c# visual-studio asp.net-web-api

11
推荐指数
1
解决办法
2万
查看次数

Microsoft.CodeDom.Providers.DotNetCompilerPlatform的v1.0.6

当我更新我的dotNet MVC项目以使用Microsoft.CodeDom.Providers.DotNetCompilerPlatform的v1.0.6时,我得到部署问题,因为roslyn目录不再位于部署的bin目录下.

我的项目中有Microsoft.Net.Compilers的v2.3.1,除了通过VS2015的Manage NuGet Packages功能更新Microsoft.CodeDom.Providers.DotNetCompilerPlatform之外,项目中没有任何其他内容被更改.

如果我恢复到Microsoft.CodeDom.Providers.DotNetCompilerPlatform的v1.0.5一切正常.

看起来好像Microsoft.CodeDom.Providers.DotNetCompilerPlatform的更新版本正在破坏/删除项目中的Microsoft.Net.Compilers引用.

我尝试从我的项目中卸载然后重新安装Microsoft.CodeDom.Providers.DotNetCompilerPlatform和Microsoft.Net.Compilers,但这并没有解决问题.

我尝试了以下StackOverflow文章中的建议但没有成功.

找不到路径的一部分... bin\roslyn\csc.exe

我还尝试手动将roslyn目录复制到输出目录,但是在项目的每个构建中都删除了该目录.

如果有人能帮助阐明如何解决问题,我将不胜感激.

莱斯

asp.net asp.net-mvc roslyn visual-studio-2015

6
推荐指数
1
解决办法
2446
查看次数

可以访问ASP.NET Web API站点虚拟目录,但控制器操作返回HTTP 503

我们未能成功使用Windows服务部署OWIN Web API服务(如此StackOverflow问题中所述).经过多次尝试解决问题后,我们决定简单地创建一个ASP.NET Web API站点并通过IIS进行部署.

在本地运行时,可以访问所有操作.但是,如果我们发布网站(使用Build - > Publish或其任何变体),我们会观察到以下内容:

  1. 当我们浏览到机器名称和端口时,会看到虚拟目录的目录列表.
  2. 当我们请求控制器操作时,站点返回HTTP错误503.该服务不可用.
  3. 没有错误记录到目标服务器上的Windows应用程序事件日志中.
  4. 在托管服务器或客户端计算机上执行请求时也会发生相同的情况.

URL ACL已创建如下:

netsh http add urlacl http://+:8098/api user=Everyone
Run Code Online (Sandbox Code Playgroud)

防火墙似乎没有阻塞端口(我们可以通过上面的步骤1来实现).URL ACL存在,公司中的每个人都可以访问它(他们应该这样做).我们不知道为什么会发生这种情况,似乎无法找到合适的答案.

有人可以建议我们可能忽略的原因或可能的解决方案吗?

UPDATE

从控制器中删除逻辑并重新发布后,Windows应用程序事件日志中出现以下(缩写)警告信息:

Event code: 3005  
Event message: An unhandled exception has occurred.  
Exception information: 
Exception type: HttpException 
Exception message: Could not find a part of the path 'D:\websites\LoggingWebApi\bin\roslyn\csc.exe'.    
Run Code Online (Sandbox Code Playgroud)

这是有趣的.看起来Publish没有使用构建版本分发Roslyn编译器.

更新2 控制器上最简单的操作方法是:

[HttpGet]
[Route("Status")]
public string Status()
{
    return "Online";
}
Run Code Online (Sandbox Code Playgroud)

即使手动将Roslyn程序集复制到bin文件夹中的服务器之后,该方法也会返回HTTP 503.应用程序事件日志中不会显示任何错误消息.

当这个方法在本地运行时(在我的机器上),它返回一个JSON字符串,我可以在文本编辑器中打开它.

asp.net roslyn asp.net-web-api

6
推荐指数
1
解决办法
261
查看次数

发布:找不到路径的一部分...\obj\DEV\AspnetCompileMerge\Source\bin\roslyn\csc.exe'

我最近将新的.NET编译器NuGet包(Microsoft.CodeDom.Providers.DotNetCompilerPlatfor)添加到现有的旧版MVC.NET网站.现在,当尝试发布网站时,我得到以下异常:

找不到路径的一部分...\obj\DEV\AspnetCompileMerge\Source\bin\roslyn\csc.exe'

我已尝试过这个问题中提到的所有内容,但没有任何效果.毕竟,这是一个稍微不同的问题.该帖子中提到的问题是构建异常,我的解决方案在本地构建良好.卸载NuGet包有效,但这不是一个真正的解决方案.

问题是基本相同,一个,但也无解.

发布输出:

4>------ Publish started: Project: Jdn.ArticleCatalogue.Web, Configuration: DEV Any CPU ------
4>Connecting to \\vm-arcawebdev01\WEBSITES\ArticleCatalogue...
4>Transformed Web.config using D:\DOTNET\Local\Logistics.Web\Portal\DEV\Application Projects\Article Catalogue\Jdn.ArticleCatalogue.Web\Web.DEV.config into obj\DEV\TransformWebConfig\transformed\Web.config.
4>Copying all files to temporary location below for package/publish:
4>obj\DEV\AspnetCompileMerge\Source.
4>C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_compiler.exe -v / -p "D:\DOTNET\Local\Logistics.Web\Portal\DEV\Application Projects\Article Catalogue\Jdn.ArticleCatalogue.Web\obj\DEV\AspnetCompileMerge\Source" "D:\DOTNET\Local\Logistics.Web\Portal\DEV\Application Projects\Article Catalogue\Jdn.ArticleCatalogue.Web\obj\DEV\AspnetCompileMerge\TempBuildDir" -keyfile "..\..\..\Solution Items\Jdn.LogisticsPortal.snk" 
4>ASPNETCOMPILER(0,0): Error ASPRUNTIME: Could not find a part of the path 'D:\DOTNET\Local\Logistics.Web\Portal\DEV\Application Projects\Article Catalogue\Jdn.ArticleCatalogue.Web\obj\DEV\AspnetCompileMerge\Source\bin\roslyn\csc.exe'.
Run Code Online (Sandbox Code Playgroud)

关于如何解决这个问题的任何想法?

.net asp.net msbuild nuget roslyn

3
推荐指数
1
解决办法
4221
查看次数