我正在编写一个控制台应用程序,它使用 SharePoint 对象模型来操作 SharePoint 内部的数据。
有两个变量:
SPWeb spWeb
string formsUser //username
我正在尝试解决用户
SPUser userF = spWeb.EnsureUser(formsUser);
此行不断抛出异常:
无法加载文件或程序集“System.Web.Extensions,Version=4.0.0.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35”或其依赖项之一。系统找不到指定的文件。
我项目的目标框架是 .Net Framework 3.5。我有参考System.Web.Extensions.dll
,版本 3.5.0.0..
我不理解的:
- 为什么我的应用程序期望这个程序集是版本
4.0.0.0
而不是版本3.5.0.0
? - 为什么这一行会抛出异常
System.Web.Extensions
,如果这一行中的所有内容都与Microsoft.SharePoint
汇编有关
更新:
在上面的示例中,我使用基于表单的用户,因此字符串类似于:i:0#.f|someprovider|john.doe
. 如果我改用基于 Windows 的用户,i:0#.w|domain\john.doe
则不会引发此异常。
有没有什么机会,SPUser
就是偷偷尝试使用System.Web.Extensions
,却失败了?