【问题标题】:Web service works in asp.net but not IISWeb 服务在 asp.net 中有效,但在 IIS 中无效
【发布时间】:2009-09-12 17:19:57
【问题描述】:

我已经构建了一个使用 DLLImport 访问非托管代码的 Web 服务。该服务在 ASP.NET 服务器中运行良好,但是一旦我从 IIS 运行该应用程序就会产生错误。我已经检查了权限,将 DLL 移动到了 system32 文件夹等......我不知道还能做什么。该服务需要在 IIS 中运行。我该怎么办?

【问题讨论】:

  • 你能发布错误吗?是 IIS 错误还是 asp.net 异常?

标签: c# c service dllimport


【解决方案1】:

VS 的 ASP.NET 服务器和 IIS 的主要区别在于 IIS 使用 ASP.NET 作为默认用户,而 VS 的服务器使用你的用户来工作。检查 ASP.NET 用户是否有权在 system32 中执行代码?提供更详细的错误信息,让我们了解问题所在。

【讨论】:

    【解决方案2】:

    这可能是默认信任级别的问题。尝试在 FullTrust 级别运行您的应用,看看会发生什么:

    http://msdn.microsoft.com/en-us/library/tkscy493.aspx

    【讨论】:

      【解决方案3】:

      如果它是经过身份验证的服务,您可以打开模拟以携带您的凭据。

      打开模拟:

      http://msdn.microsoft.com/en-us/library/xh507fc5.aspx

      在 web.config 中

      <system.web>
          <identity impersonate="true"/>
      </system.web>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-07-30
        • 2023-03-04
        • 2012-08-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多