我在share point 2007中创建了一个自定义计时器作业,它从数据库中获取电子邮件ID列表,并且必须将其添加到共享点中的安全组。
当我尝试使用spweb.ensureuser("emailid")
验证用户或甚至将用户添加到群组而未经验证时,我收到异常“用户未找到”。
我也使用过web.allusers.getbyemail("emailid")
,但会产生相同的异常。
还创建了带有连接字符串和提供程序元素的owstimer.exe.config文件,但没有运气。
有什么想法吗?
答案 0 :(得分:0)
spweb.ensureuser接受1)用户登录(不是电子邮件)2)显示与某些登录对应的用户的名称。 SharePoint具有一些“登录存储”,如AD或基于表单的验证提供程序,具有底层服务或数据库。这意味着您必须在登录中找到您在spweb.ensureuser中使用的内容。您必须将用户登录添加到SharePoint,并且电子邮件将自动上载。如果您想使用纯电子邮件作为登录,您应该了解SharePoint和OpenID中的声明基于身份验证。有几种产品可以做到这一点(我不会宣传任何':) :)。