Retreiving List Saturu WebService SharePoint 2003

Pievienot webreference uz Lists.asmx SharePoint vietnē.

http://localhost / _vti_bin / Lists.asmx
(SharePoint virtuālo direktoriju URL / _vti_bin / Lists.asmx

rakstīt šādas metodes savā webservice.

privātas data.DataTable GetDataTableFromWSS(bool onlySchema)
{
string WssSiteUrl = http://192.168.111.21;
string WssSiteUrl = ConfigurationSettings.AppSettings[“WssSiteUrl”];
WssSite.Lists saraksti = jauni WssSite.Lists();
lists.Url = WssSiteUrl + “_vti_bin / Lists.asmx”;
lists.Credentials = System.Net.CredentialCache.DefaultCredentials;

lists.PreAuthenticate = true;
//Jums ir jāiet saraksta nosaukums šeit
string CommandText = “Darbinieku Info”;
XmlNode = ListCollectionNode lists.GetListCollection();
List XmlElement = (XmlElement)ListCollectionNode.SelectSingleNode(String.Format(“WSS:Saraksts[@ Title = "{0}"]”, CommandText), NameSpaceMgr);
ja (List == null)
{
mest jaunu ArgumentException(String.Format(“Saraksts {0} nevarēja atrast vietas {1}”, CommandText, WssSiteUrl));
}
string TechListName = List.GetAttribute(“Vārds”);
data.DataTable rezultāts = jauna data.DataTable(“saraksts”);
XmlNode ListInfoNode = lists.GetList(TechListName);
System.Text.StringBuilder fieldRefs = jauni System.Text.StringBuilder();
System.Collections.Hashtable DisplayNames = jauni System.Collections.Hashtable();
foreach (XmlElement Field in ListInfoNode.SelectNodes(“WSS:Lauki / WSS:Lauks”, NameSpaceMgr))
{
ja (Field.HasChildNodes)
{
foreach (XmlElement FLD in Field.SelectNodes(“WSS:Lauki / WSS:Lauks”, NameSpaceMgr))
{
string FieldName = Fld.GetAttribute(“Vārds”);
string FieldDisplayName = Fld.GetAttribute(“DisplayName”);
ja (result.Columns.Contains(FieldDisplayName))
{
FieldDisplayName = FieldDisplayName + ” (” + FieldName + “)”;
}
result.Columns.Add(FieldDisplayName, TypeFromField(Lauks));
fieldRefs.AppendFormat(“”, FieldName);
DisplayNames.Add(FieldDisplayName, FieldName);
}
}
vēl
{
string FieldName = Field.GetAttribute(“Vārds”);
string FieldDisplayName = Field.GetAttribute(“DisplayName”);
ja (result.Columns.Contains(FieldDisplayName))
{
FieldDisplayName = FieldDisplayName + ” (” + FieldName + “)”;
}
result.Columns.Add(FieldDisplayName, TypeFromField(Lauks));
fieldRefs.AppendFormat(“”, FieldName);
DisplayNames.Add(FieldDisplayName, FieldName);
}
}
ja (onlySchema) atgriezties rezultāts;
XmlElement lauki = ListInfoNode.OwnerDocument.CreateElement(“ViewFields”);
fields.InnerXml = fieldRefs.ToString();
XmlNode ItemsNode = lists.GetListItems(TechListName, “”, nulle, jomās, “1000000”, nulle);
// Uzmeklēšanas lauki vienmēr sākas ar ciparu ID, Pēc tam ;# un tad string pārstāvniecības.
// Mēs parasti interesē tikai nosaukuma, tāpēc mēs sloksne ID.
System.Text.RegularExpressions.Regex CheckLookup = jauni System.Text.RegularExpressions.Regex(“^ D ;#”);

foreach (XmlElement vienums ItemsNode.SelectNodes(“rs:Datums / s:rinda”, NameSpaceMgr))
{
data.DataRow newRow = result.NewRow();
foreach (col in result.Columns data.DataColumn)
{
ja (Item.HasAttribute(“ows_” + (stīgu)DisplayNames[col.ColumnName]))
{
string val = Item.GetAttribute(“ows_” + (stīgu)DisplayNames[col.ColumnName]);
ja (CheckLookup.IsMatch((stīgu)val))
{
string = valString izvēle, kā String;
val = valString.Substring(valString.IndexOf(“#”) + 1);
}
// Piešķirot string lauku, kas sagaida numurus vai
// datetime vērtības netieši konvertē tos
newRow[ar] = Val;
}
}
result.Rows.Add(newRow);
}
atgriezties rezultāts;
}

// Šāda funkcija tiek izmantota, lai Get Vārdtelpas

privātā statiskā XmlNamespaceManager _nsmgr;
privātā statiskā XmlNamespaceManager NameSpaceMgr
{
nokļūt
{
ja (_nsmgr == null)
{
_nsmgr = jauni XmlNamespaceManager(jaunu NameTable());
_nsmgr.AddNamespace(“WSS”, “http://schemas.microsoft.com / SharePoint / ziepes /”);
_nsmgr.AddNamespace(“ar”, “UUID:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882”);
_nsmgr.AddNamespace(“dt”, “UUID:C2F41010-65B3-11d1-A29F-00AA00C14882”);
_nsmgr.AddNamespace(“rs”, “urna:shēmas-microsoft-com:rowset”);
_nsmgr.AddNamespace(“gada”, “#RowsetSchema”);

}
atgriezties _nsmgr;
}
}
privātas Type TypeFromField(XmlElement jomā)
{
slēdzis (field.GetAttribute(“Tips”))
{
gadījumā “DateTime”:
atgriezties typeof(DateTime);
gadījumā “Vesels skaitlis”:
atgriezties typeof(int);
gadījumā “Skaits”:
atgriezties typeof(pludiņš);
noklusējuma:
atgriezties typeof(stīgu);
}
}

4 komentārus Retreiving saraksts Saturu WebService SharePoint 2003

Atstāj atbildi

Jūs varat izmantot šo HTML tagus

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>