ASP.NET的无法访问WebService的权限问题

今天在访问远程一个网站的Webservice时,提示

System.InvalidOperationException: Unable to generate a temporary class。 在本地有部署一样的网站却没有问题出现。

查找资料显示,C:\Windows\temp下没有aspnet帐户读/写的权限。远程连上远程机,仔细比较后发现本地与远程的这个文件权限是一样的。而且都有NETWORK SERVICE的相应权限。
还有资料说明IWAM-***帐号要设置读/写权限,设置之后问题解决,但本地没设置却没问题。

原因:在远程网站上定义的应用程序池使用的帐户不是默认的,改成了“IWAM-***”,本地使用的默认的“网络服务”帐户。

设置网站使用的帐户
IIS / 网站所在的应用程序池/右击属性/切换到标识页签/选择应用程序池的安全性帐户:
ASP.NET的无法访问WebService的权限问题
选项1:预定义帐户 网络服务/本地服务/本地系统 (默认选中此项,网络服务)
选项2:配置,填写用户名,密码。

远程上使用的第二项,IWAM-***帐户。

你可能感兴趣的:(webservice)