最近做了一下通过webservices调用sharepoint站点的练习。
代码大致如下:
[WebMethod]
public string norunWithElevatedPrivilege()
{
using (SPSite site = new SPSite("http://mcjeremy:9000/ "))
{
using (SPWeb web = site.OpenWeb())
{
return web.Lists[0].Title + "用户名:" + web.CurrentUser.Name;
}
}
}
但是,在将这个ws Host到一个asp.net站点后,运行代码,却报“找不到http://mcjeremy:9000/ 应用程序”的错误
很莫名的错误,单独打开http://mcjeremy:9000/ 却,完全没有问题。
最后,才发现了这个解决方法:
打开Host的asp.net站点使用的应用程序池,在其属性中,将其“标识”部分改为使用和 http://mcjeremy:9000/ 这个SP站点
的应用程序池的标识一样(即帐户和密码一致)就可以了。
不知道为什么MS不给个帐户相关的提示错误,而是找不到应用程序,,,郁闷~~~~
---- 在这中间,碰到了一个相当不解的问题:
代码中的 return web.Lists[0].Title + "用户名:" + web.CurrentUser.Name;
如果改为 return "用户名:" + web.CurrentUser.Name; 的话,就会报错?????????
哪位达人可以给讲讲啷个会这样子的?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。