Web服务在asp.net中运行,但不在IIS中运行

时间:2009-09-12 17:19:57

标签: c# c service dllimport

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

3 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

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

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

答案 2 :(得分:0)

如果它是经过身份验证的服务,您可以启用模拟以通过您的凭据。

开启模拟:

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

在web.config中

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