错误描述:Net 开发WebService调用Microsoft.SharePoint.dll的服务器端对象模型,出现找不到网站的应用程序,或者出现500错误。

错误截图:

[Webservice调用页错误]

System.IO.FileNotFoundException: 找不到位于 http://localhost 的 Web 应用程序。请确认正确键入了此 URL。如果此 URL 需要提供现有内容,则系统管理员可能需要添加到指定应用程序的新请求 URL 映射。 在 Microsoft.SharePoint.SPSite..ctor(SPFarm farm, Uri requestUri, Boolean contextSite, SPUserToken userToken) 在 Microsoft.SharePoint.SPSite..ctor(String requestUrl)
在 WebApplication1.WebService1.GetWebID(String SiteUrl) 位置 C:\Users\Administrator\Documents\Visual Studio 2010\Projects\WebApplication1\WebApplication1\WebService1.asmx.cs:行号 26

[完整的错误提示]

[WebMethod(Description = "获取WebID")]

public string GetWebID(string SiteUrl)

{

SPSite site = null;

SPWeb web = null;

site = new SPSite(SiteUrl);

web = site.OpenWeb();

return "ID:" + web.ID.ToString();

}

[测试代码,获取WebID]

  最初以为是备用访问映射,或者修改Host文件的问题,因为找不到应用程序么,然后在浏览器里打开url,发现可以打开;再考虑是不是权限不够,因为是net调用sharepoint的dll,然后提权进行操作,发现也不能解决问题。

  查了很久,后来发现,代码预览有问题,但是发布以后,调用WebService却没有问题,感觉很奇怪,但是没有办法进行调试了。后来查资料,发现说VS的iis对64位支持有问题,虽然自己并不清楚是不是这里的问题,但是发布以后,调试本机的iis,发现问题不存在了(感谢这位博主的文章,参考博文地址附后)。

解决方法: 把自己建的项目发布到本地iis,然后 属性 – web – 使用本地iis web服务器,填写格式[url:port/网站名称],然后可以调试了。

  修改以后,发现调用的时候,还有抛黄页的现象[“拒绝访问。 (异常来自 HRESULT:0x80070005 (E_ACCESSDENIED))”],后来,经朋友提醒,发现木有提权,菜鸟就是菜鸟,之前调试的晕头转向,居然忽略了提权。

提权代码:

SPSecurity.RunWithElevatedPrivileges(delegate()

{

代码段….

});

  再有就是,有人说写控制台,也会出现找不到应用程序的情况,将生成的目标平台调成64位,或者调成[Any cpu],自己到没有遇到过,不过这些对WebService调用sharepoint.dll是不管用的。

参考网址: http://blog.csdn.net/yun_liang1028/article/details/6116146

Sharepoint 2010 自定义WebService 找不到网站应用程序的更多相关文章

  1. SharePoint 2010 ——自定义上传页面与多文件上传解决方案

    最近项目遇到一个很麻烦的问题,原以为很容易解决,结果搞了那么久,先开个头,再慢慢写 SharePoint 2010 ——自定义上传页面与多文件上传解决方案 1.创建Sharepoint空白项目,创建应 ...

  2. [SharePoint 2010] 自定义字段类型开发(二)

    在SharePoint 2010中实现View Action Button效果. http://www.sharepointblogs.be/blogs/vandest/archive/2008/06 ...

  3. sharepoint 2010自定义访问日志列表设置移动终端否和客户端访问系统等计算列的公式

    上个月本人开发和上线了一个在SharePoint 2010上基于HTML5的移动OA网站,后端服务采用自定义的基于AgilePoint工作流引擎的Sharepoint Web服务,前端主要采用Jque ...

  4. SharePoint 2010自定义母版页小技巧——JavaScript和CSS引用

    通常在我们的项目中,都会涉及到母版页的定制.并且必不可少的,需要配合以一套自己的JavaScript框架和CSS样式.你有没有遇到过这样的情况呢,在开发环境和UAT时都还算顺利,但是当最终部署到生产服 ...

  5. SharePoint 2010 自定义 字段 类型--------省市区联动

    转:http://www.cnblogs.com/sp007/p/3384310.html 最近有几个朋友问到了有关自定义字段类型的问题,为了让更多的人了解自定义字段类型的方法,特写一篇博客与大家分享 ...

  6. sharepoint 2010 自定义页面布局

    在sharepoint开发中经常遇到 自定义网站栏.内容类型,页面布局和模板页也会遇到,遇到机会就相对比较小. 首先新建一个空的sharepoint项目: 1)创建网站兰: 修改SiteColumns ...

  7. SharePoint 2010 自定义页面出现“项目可能已被其他用户删除或重命名”问题跟踪

    异常详细信息: Microsoft.SharePoint.SPException: 位置 http://portal/Pages/ShowArticle.aspx?id=19&mylist=8 ...

  8. 转载:SharePoint 2010 自定义 字段 类型--------省市区联动

    最近有几个朋友问到了有关自定义字段类型的问题,为了让更多的人了解自定义字段类型的方法,特写一篇博客与大家分享,首先看一下解决方案目录 创建自定义类型分以下几个步骤: 第一步:添加SharePoint映 ...

  9. SharePoint 2010 以Jquery Ajax方式更新SharePoint列表数据!

    之前本人的博客介绍了<sharepoint 2010自定义访问日志列表设置移动终端否和客户端访问系统等计算列的公式>,那如何通过Jquery提交访问日志到自定义的SharePoint的访问 ...

随机推荐

  1. hive日志位置(日志定位报错:Failed with exception Unable to move sourcehdfs://namenode/tmp/hive-pmp_bi/h)

    Hive中的日志分为两种 1. 系统日志,记录了hive的运行情况,错误状况. 2. Job 日志,记录了Hive 中job的执行的历史过程. 日志查看方法 1,在本地运行机器上 hive日志存储位置 ...

  2. 安卓程序员要拿到5000和1w的薪资,分别需要掌握哪些技术?

    这个是我在逛知乎的时候发现的一个帖子,在这里小小的整理了一下,收集了一些评论,然后我分享出来,希望对自己还有同行有所帮助. 著作权归作者所有. 商业转载请联系作者获得授权,非商业转载请注明出处. 链接 ...

  3. Oracle 执行计划(Explain Plan) 说明

    如果要分析某条SQL的性能问题,通常我们要先看SQL的执行计划,看看SQL的每一步执行是否存在问题. 如果一条SQL平时执行的好好的,却有一天突然性能很差,如果排除了系统资源和阻塞的原因,那么基本可以 ...

  4. JDBC-数据库的编程(一)

    因为我使用的mysql数据库客户端程序是workBench,所以会用workBench来进行讲解. create table tbl_user( id int(11) unsigned not nul ...

  5. qq侧滑

    上一篇博客带大家实现了:Android 自定义控件打造史上最简单的侧滑菜单 ,有兄弟看了以后说,你这滑动菜单过时了呀~QQ5.0的效果还不错~~嗯,的确,上一篇也承诺过,稍微修改上一篇的代码,实现QQ ...

  6. 1.1、Android Studio创建一个项目

    Android Studio中的项目包含一个或多个模块.本节帮助你创建一个新的项目. 创建一个新的项目 如果你之前没有打开项目,Android Studio显示欢迎页面,通过点击Start a New ...

  7. Android项目开发填坑记-9patchPng报错

    如果阅读体验不佳,请使用–> Github版 背景 之前写了一篇文章Android必知必会–NinePatch图片制作详细介绍了Android 9Patch图片的制作和一些Demo展示,这次说明 ...

  8. Win 10 下 android studio显示 Intel haxm无法安装,以及VT-X和hyper-x的冲突问题

               我 的电脑是神舟战神k650c i7 D4,处理器是Intel core i7 4710-MQ,系统是win 10的 我心血来潮想学习一下安卓开发,就首先安装了android s ...

  9. Android列表视图ListView和ListActivity-android学习之旅(二十四)

    ListView简介 ListView是android中常用的一种控件,创建ListView有两种方式: 1.在xml中使用ListView控件创建. 2.使用activity继承ListActivi ...

  10. HTML中锚点的使用

    说到锚点,我们也许会需要稍微的思考一下,什么是锚点? 官方的答案是这样的: 那么你可能就会有下面的疑问,锚点能做什么啊? 回答就是,锚点可以理解为一个标记,一个用于而且便于寻找的标记.常用于网页制作的 ...