System.FormatException:无法识别的参数格式:'。\ application.api.dll'

时间:2018-05-24 18:12:51

标签: c# .net-core asp.net-core-2.0

所以,我试图自我部署。我的整个发布文件夹中都有一个.exe,似乎包含所有dll和其他设置,如web.config和appsettings.json

我尝试从文件夹dotnet application.api.dll本地运行它并且它有效 然后我在托管上传了整个发布文件夹,并在我的logs / stdout

中找到了它
  

未处理的异常:System.FormatException:无法识别的参数格式:'。\ application.api.dll'。      在Microsoft.Extensions.Configuration.CommandLine.CommandLineConfigurationProvider.Load()      在Microsoft.Extensions.Configuration.ConfigurationRoot..ctor(IList`1提供程序)      在Microsoft.Extensions.Configuration.ConfigurationBuilder.Build()      在Microsoft.AspNetCore.Hosting.WebHostBuilder.BuildCommonServices(AggregateException& hostingStartupErrors)      在Microsoft.AspNetCore.Hosting.WebHostBuilder.Build()      at kado.api.Program.Main(String [] args)在C:\ Users \ besti \ Git \ gra \ kado.api \ Program.cs:第28行

我觉得我已经尝试了一切,我无法弄清楚我想要做些什么来修复它。任何人都可以指导我一点吗?如果需要,我可能会提供更多信息。

1 个答案:

答案 0 :(得分:0)

仔细检查使用仅调用.\application.api.exe的自包含应用时,而不是.\application.api.exe application.api.dll

例如,您的web.config文件应该类似于

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <handlers>
      <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
    </handlers>
    <aspNetCore processPath=".\application.api.exe" 
                stdoutLogEnabled="false" 
                stdoutLogFile=".\logs\stdout" />
  </system.webServer>
</configuration>