2013-02-13 60 views
0

我有一个奇怪的问题。服务器违反协议。部分= ResponseStatusLine MVC4

我对一个Url进行HttpWebRequest,我的测试库中的测试正常工作。

然后我回到我的mvc4 web应用程序,并尝试调用我从测试中调用的同一段代码。它失败了。

现在,我知道这里有些事情可能会出错。但是,真的,没有那么多事情应该。我知道一个事实,它与web.config有关,因为无论何时我将mvc4应用程序中的web.config更改为app.config,其值相同,都可以使用。

目标框架是.NET 4.5。

这里是我的web.config文件

<?xml version="1.0"?> 
<configuration> 
    <configSections> 
     <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" /> 
    </configSections> 
    <startup> 
     <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/> 
    </startup> 
    <system.net> 
     <settings> 
      <httpWebRequest useUnsafeHeaderParsing="true"/> 
     </settings> 
    </system.net> 
    <system.web> 
     <httpRuntime targetFramework="4.5" /> 
     <compilation debug="true" targetFramework="4.5"/> 
    </system.web> 
    <log4net> 
     <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender"> 
      <datePattern value="dd.MM.yyyy'.log'" /> 
      <lockingModel type="log4net.Appender.FileAppender+MinimalLock" /> 
      <file value="..\..\logs\" /> 
      <appendToFile value="true" /> 
      <rollingStyle value="Composite" /> 
      <maxSizeRollBackups value="10" /> 
      <maximumFileSize value="10MB" /> 
      <staticLogFileName value="false" /> 
      <layout type="log4net.Layout.PatternLayout"> 
       <param name="ConversionPattern" value="%d [%t] %-5p %c %m%n"/> 
      </layout> 
     </appender> 

     <root> 
      <level value="ALL" /> 
      <appender-ref ref="LogFileAppender" /> 
     </root> 
    </log4net> 
</configuration> 

回答

1

好吧,这事不关己与我的配置...卫生署!

它与我称之为我知道工作的代码片段的方式有关。由于它是一个我正在调用的异步方法,因此我需要从异步方法调用它,以便线程不会挂在其他地方。 Task.Run(()=> MyMethod())诀窍。

相关问题