我正在用C#开发一个概念验证网站,它将获取URL查询字符串,将其与一个特殊的Groove工作空间进行匹配,然后如果用户没有该空间,则邀请他们进入该空间。我已经连接到Groove Data Bridge,找到工作空间,读取工作空间成员部分。
不过,我在自动邀请上遇到了一个障碍。我运行这作为一个独立的网站“桥”,所以我试图运行这纯粹是从网络服务器。我有一个字符串形式的Groove标识,用于我想从数据库邀请的人:
CurrUserIdentity = grooveIdentity://nzkth68eqzgktrb9sbr....
但是,我找不到如何将字符串转换为可被邀请的真正的GrooveMember.Member对象。在这种情况下,最简单的邀请方式是什么?
发布于 2009-06-04 06:47:44
终于找到了:
GrooveMembers.GrooveMembers AddMember = new GrooveMembers.GrooveMembers();
AddMember.GrooveRequestHeaderValue = new GrooveMembers.GrooveRequestHeader();
AddMember.GrooveRequestHeaderValue.GrooveRequestKey = someString; //Whatever used in your envronment
AddMember.GrooveRequestHeaderValue.GrooveIdentityURL = id.URI; //URI of the local Groove identity or the Groove Data Bridge
AddMember.Url = someOtherString /*Local web string or remote host*/ + space.Members;//A property of the space you are inviting the tuser into
GrooveMembers.Member[] Members = AddMember.Read();//actually connects to the service
GrooveMembers.Member newMember = new GrooveMembers.Member();
newMember.URI = userIdentity;//A string stripped from the database and TRIMmed
newMember.Name = userFullName;//A string also pulled from the database DisplayNeme\GrooveDomain
string userContact = "/GWS/Groove/2.0/Contacts/" + userIdentity.Replace("://", "/");
newMember.Contact = userContact;// A string formatted by replacing :// with / adding "/GWS/Groove/2.0/Contacts/" to the front of the Groove Identity
newMember.Role = "$Telespace.Member";
AddMember.Create(newMember);
GrooveMembers.GrooveMembers AddMember = new GrooveMembers.GrooveMembers();
AddMember.GrooveRequestHeaderValue = new GrooveMembers.GrooveRequestHeader();
AddMember.GrooveRequestHeaderValue.GrooveRequestKey = someString; //Whatever used in your envronment
AddMember.GrooveRequestHeaderValue.GrooveIdentityURL = id.URI; //URI of the local Groove identity or the Groove Data Bridge
AddMember.Url = someOtherString [Local web string or remote host] + space.Members [A property of the space you are inviting the tuser into];
GrooveMembers.Member[] Members = AddMember.Read();//actually connects to the service
GrooveMembers.Member newMember = new GrooveMembers.Member();
newMember.URI = userIdentity;//A string stripped from the database and TRIMmed
newMember.Name = userFullName;//A string also pulled from the database DisplayNeme\GrooveDomain
string userContact = "/GWS/Groove/2.0/Contacts/" + userIdentity.Replace("://", "/");
newMember.Contact = userContact;// A string formatted by replacing :// with / adding "/GWS/Groove/2.0/Contacts/" to the front of the Groove Identity
newMember.Role = "$Telespace.Member";
AddMember.Create(newMember);发布于 2011-04-15 00:55:38
Groove Web Services帮助器库可以提供一个更易于管理的V12来完成该任务-- http://gwsv12helpers.codeplex.com/
https://stackoverflow.com/questions/852227
复制相似问题