none
VS2005不能引用Sharepoint2007组件 RRS feed

  • 问题

  • 我有一个Sharepoint service 2007的网站(如http://newncn),里面建了一个Document Library的站点,并且我还有一个普通的.net 2005开发的企业内部网(如http://ncn),我想在ncn网站列出所有newncn网站中的Document library中的文件。因为我的开发电脑是Windows XP,我装了Framework3.0,但因为不是Server版,所以装不了WSS3.0. 然后我从newncn的服务器上将microsoft.Sharepoint.dll(V12)的文件以及相关的文件拷贝到我的开发环境,并将他加载到“程序集缓存”中。然后我按下面的方式操作:
    1. 开启VS2005.net,点击新建网站
    2. 在解决方案中点右键,点添加引用,在.net这一页中找不到microsoft.sharepoint.dll 的V12的版本,只有V11的版本,不知为什么。那么我就直接浏览去找到这个DLL,并加载,发现在Bin目录下不出现,只在web.config中的Assembly节点里出现。
    3. 在Defaul.aspx.cs中能正常相用Using Microsoft.sharepoint. 并在Load中写上如下的代码
          protected void Page_Load(object sender, EventArgs e)
          {
              SPSite s = new SPSite("http://newncn");
              SPWeb sp = s.OpenWeb();
             
          }
    4. 按F5运行,编译没有问题,但出现如下结果,不知为什么?

      这个问题困扰我几天了。不知怎样才能将Microsoft.sharepoint.dll正常载入到程序集缓存,明明我的程序集缓存里能看到V12的版本,并且我把V11的已移走,可在添加引用里却为何找不到V12版本,而只能找到V11版本?而我直接按浏览来添加引用,为什么又出现上面的错误。谁能帮我分析一下是哪个环节出了问题?不胜感激。

     

    “/SharepointDocLib”应用程序中的服务器错误。

    未能加载文件或程序集“Microsoft.SharePoint.Library, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c”或它的某一个依赖项。系统找不到指定的文件。

    说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

    异常详细信息: System.IO.FileNotFoundException: 未能加载文件或程序集“Microsoft.SharePoint.Library, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c”或它的某一个依赖项。系统找不到指定的文件。

    源错误:

    行 17:         SPWeb sp = s.OpenWeb();
    行 18:         
    行 19:     }
    行 20: }
    

     

    2007年11月19日 3:26

答案

  • 你應該是未引用成功, 因為 Microsoft.SharePoint.dll 是GAC 的dll ,且存在於Moss Server上

    先確認你的開發環境與Moss Server 是同一台, (若非同一台server ,會有問題.)

     

    然後在你的ASP.NET 專案加入參考 ,以瀏覽方式找到以下路徑

    C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\ISAPI 下 可找到 Microsoft.SharePoint.dll

     

    2007年11月28日 5:19