<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://www.infopathdev.com:443/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Data Connections</title><link>https://www.infopathdev.com:443/forums/44.aspx</link><description> </description><dc:language>en</dc:language><generator>CommunityServer 2007 SP3 (Build: 31118.962)</generator><item><title>Cast XMlNode to SPUser or SPUserCollection</title><link>https://www.infopathdev.com:443/forums/thread/30841.aspx</link><pubDate>Fri, 25 Jul 2008 13:42:58 GMT</pubDate><guid isPermaLink="false">033a2e2d-04e2-4a9d-be01-a4634161eefd:30841</guid><dc:creator>altja</dc:creator><slash:comments>0</slash:comments><comments>https://www.infopathdev.com:443/forums/thread/30841.aspx</comments><wfw:commentRss>https://www.infopathdev.com:443/forums/commentrss.aspx?SectionID=44&amp;PostID=30841</wfw:commentRss><description>&lt;font size="2"&gt;
&lt;p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;&amp;nbsp;First, I got my code to work, but I would like to do it better.&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#0000ff"&gt;I want to cast the results from &lt;/font&gt;&lt;font color="#000000"&gt;GetUserCollectionFromGroup into a SPUserCollection or SPUser.&amp;nbsp; Is there a way directly convert it.&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;GetUserCollectionFromGroup is a method in the SharePoint UserGroup WSDL.&lt;/p&gt;
&lt;p&gt;&lt;font color="#0000ff" size="2"&gt;&lt;/font&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;font color="#0000ff" size="2"&gt;My rough working&amp;nbsp;Code&amp;nbsp;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#0000ff" size="2"&gt;public&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;static&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;String&lt;/font&gt;&lt;font size="2"&gt; GetUserCollectionFromGroup(&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;String&lt;/font&gt;&lt;font size="2"&gt; group, &lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;String&lt;/font&gt;&lt;font size="2"&gt; site){&lt;/p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;bool&lt;/font&gt;&lt;font size="2"&gt; isMember = &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;false&lt;/font&gt;&lt;font size="2"&gt;;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;UserGroup&lt;/font&gt;&lt;font size="2"&gt; ug = &lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;new&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;UserGroup&lt;/font&gt;&lt;font size="2"&gt;();&lt;/p&gt;&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;SPUserCollection&lt;/font&gt;&lt;font size="2"&gt; coll;&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;&lt;/font&gt;&lt;font color="#008000" size="2"&gt;//SPUser user = new SPUser(&lt;/p&gt;&lt;/font&gt;&lt;font size="2"&gt;System.Xml.&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;XmlAttributeCollection&lt;/font&gt;&lt;font size="2"&gt; attColl;&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;ug.Credentials = System.Net.&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;CredentialCache&lt;/font&gt;&lt;font size="2"&gt;.DefaultCredentials;&lt;/p&gt;
&lt;p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;try&lt;/p&gt;&lt;/font&gt;&lt;font size="2"&gt;
&lt;p&gt;{&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;XmlNode&lt;/font&gt;&lt;font size="2"&gt; node = ug.GetUserCollectionFromGroup(group);&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;&lt;/font&gt;&lt;font color="#008000" size="2"&gt;//SPUserCollection coll = (SPUserCollection)node.FirstChild;&lt;/p&gt;&lt;/font&gt;&lt;font size="2"&gt;System.Collections.&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;IEnumerator&lt;/font&gt;&lt;font size="2"&gt; ienum = node.FirstChild.GetEnumerator();&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;while&lt;/font&gt;&lt;font size="2"&gt; (ienum.MoveNext())&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;{&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;XmlNode&lt;/font&gt;&lt;font size="2"&gt; elemNode = (&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;XmlNode&lt;/font&gt;&lt;font size="2"&gt;)ienum.Current;&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;attColl = elemNode.Attributes;&lt;/p&gt;&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;String&lt;/font&gt;&lt;font size="2"&gt; name = attColl[2].Value.ToString();&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;font color="#2b91af" size="2"&gt;String&lt;/font&gt;&lt;font size="2"&gt; email = attColl[4].Value.ToString();&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;}&lt;/p&gt;
&lt;p&gt;}&lt;/p&gt;
&lt;p&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;catch&lt;/font&gt;&lt;font size="2"&gt; { }&lt;/font&gt;&lt;font color="#008000" size="2"&gt;//catches groups that don&amp;#39;t exist&lt;/p&gt;&lt;/font&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;font color="#0000ff" size="2"&gt;return&lt;/font&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;font color="#a31515" size="2"&gt;&amp;quot;&amp;quot;&lt;/font&gt;&lt;font size="2"&gt;;&lt;/font&gt;&lt;/font&gt;&lt;font size="2"&gt; 
&lt;p&gt;}&lt;/p&gt;&lt;/font&gt;</description></item></channel></rss>