ఆర్కైవ్స్

SharePoint లో webservice ద్వారా జాబితా కంటెంట్ Retreiving 2003

SharePoint సైట్ లో Lists.asmx కు Webreference జోడించండి.

http://localhost / _vti_bin / Lists.asmx
(SharePoint వాస్తవిక డైరెక్టరీ URL / _vti_bin / Lists.asmx

మీ webservice ఈ క్రింది పద్దతులను రాయడానికి.

ప్రైవేట్ data.DataTable GetDataTableFromWSS(bool onlySchema)
{
స్ట్రింగ్ WssSiteUrl = http://192.168.111.21;
స్ట్రింగ్ WssSiteUrl = ConfigurationSettings.AppSettings[“WssSiteUrl”];
WssSite.Lists జాబితాలు = కొత్త WssSite.Lists();
lists.Url = WssSiteUrl + “_vti_bin / Lists.asmx”;
lists.Credentials = System.Net.CredentialCache.DefaultCredentials;

lists.PreAuthenticate = true;
//మీరు ఇక్కడ జాబితా పేరు పాస్ కలిగి
స్ట్రింగ్ CommandText = “Employee సమాచారం”;
XmlNode ListCollectionNode = lists.GetListCollection();
XmlElement జాబితా = (XmlElement)ListCollectionNode.SelectSingleNode(String.Format(“WSS:జాబితా[@ Title = '{0}']”, CommandText), NameSpaceMgr);
ఉంటే (జాబితా == శూన్య)
{
కొత్త ArgumentException త్రో(String.Format(“జాబితా {0} సైట్ దొరకలేదు {1}”, CommandText, WssSiteUrl));
}
స్ట్రింగ్ TechListName = List.GetAttribute(“పేరు”);
data.DataTable ఫలితంగా = కొత్త data.DataTable(“జాబితా”);
XmlNode ListInfoNode = lists.GetList(TechListName);
System.Text.StringBuilder fieldRefs = కొత్త System.Text.StringBuilder();
System.Collections.Hashtable DisplayNames = కొత్త System.Collections.Hashtable();
foreach (ListInfoNode.SelectNodes లో XmlElement ఫీల్డ్(“WSS:ఫీల్డ్స్ / WSS:ఫీల్డ్”, NameSpaceMgr))
{
ఉంటే (Field.HasChildNodes)
{
foreach (Field.SelectNodes లో FLD XmlElement(“WSS:ఫీల్డ్స్ / WSS:ఫీల్డ్”, NameSpaceMgr))
{
స్ట్రింగ్ = FIELDNAME Fld.GetAttribute(“పేరు”);
స్ట్రింగ్ = FieldDisplayName Fld.GetAttribute(“DisplayName”);
ఉంటే (result.Columns.Contains(FieldDisplayName))
{
FieldDisplayName = FieldDisplayName + ” (” + FIELDNAME + “)”;
}
result.Columns.Add(FieldDisplayName, TypeFromField(ఫీల్డ్));
fieldRefs.AppendFormat(“”, FIELDNAME);
DisplayNames.Add(FieldDisplayName, FIELDNAME);
}
}
వేరే
{
స్ట్రింగ్ FIELDNAME = Field.GetAttribute(“పేరు”);
స్ట్రింగ్ FieldDisplayName = Field.GetAttribute(“DisplayName”);
ఉంటే (result.Columns.Contains(FieldDisplayName))
{
FieldDisplayName = FieldDisplayName + ” (” + FIELDNAME + “)”;
}
result.Columns.Add(FieldDisplayName, TypeFromField(ఫీల్డ్));
fieldRefs.AppendFormat(“”, FIELDNAME);
DisplayNames.Add(FieldDisplayName, FIELDNAME);
}
}
ఉంటే (onlySchema) తిరిగి ఫలితం;
XmlElement ఖాళీలను = ListInfoNode.OwnerDocument.CreateElement(“ViewFields”);
fields.InnerXml = fieldRefs.ToString();
XmlNode ItemsNode = lists.GetListItems(TechListName, “”, శూన్య, ఖాళీలను, “1000000”, శూన్య);
// శోధన ఖాళీలను ఎల్లప్పుడూ సంఖ్యా ID ప్రారంభం, అప్పుడు ;# ఆపై స్ట్రింగ్ ప్రాతినిధ్యం.
// మేము సాధారణంగా పేరును మాత్రమే ఆసక్తి, కాబట్టి మేము ID వాదనను.
System.Text.RegularExpressions.Regex CheckLookup = కొత్త System.Text.RegularExpressions.Regex(“^ D ;#”);

foreach (ItemsNode.SelectNodes లో XmlElement అంశం(“రూ:డేటా z /:వరుసగా”, NameSpaceMgr))
{
data.DataRow newRow = result.NewRow();
foreach (result.Columns లో data.DataColumn లోయ)
{
ఉంటే (Item.HasAttribute(“ows_” + (స్ట్రింగ్)DisplayNames[col.ColumnName]))
{
స్ట్రింగ్ Val = Item.GetAttribute(“ows_” + (స్ట్రింగ్)DisplayNames[col.ColumnName]);
ఉంటే (CheckLookup.IsMatch((స్ట్రింగ్)గంటల))
{
స్ట్రింగ్ valString = Val స్ట్రింగ్ వంటి;
Val = valString.Substring(valString.IndexOf(“#”) + 1);
}
// సంఖ్యలు లేదా ఆశిస్తున్నట్లు ఒక రంగంలో ఒక స్ట్రింగ్ కేటాయించడం
// తేదీసమయం విలువలు పరిపూర్ణంగా వాటిని మారిపోతుంది
newRow[తో] = H;
}
}
result.Rows.Add(newRow);
}
తిరిగి ఫలితం;
}

// క్రింది ఫంక్షన్ నేంస్పేసులు పొందుటకు ఉపయోగిస్తారు

ప్రైవేట్ స్టాటిక్ XmlNamespaceManager _nsmgr;
ప్రైవేట్ స్టాటిక్ XmlNamespaceManager NameSpaceMgr
{
పొందండి
{
ఉంటే (_nsmgr == శూన్య)
{
_nsmgr = కొత్త XmlNamespaceManager(కొత్త NameTable());
_nsmgr.AddNamespace(“WSS”, “http://schemas.microsoft.com/sharepoint/soap/”);
_nsmgr.AddNamespace(“లు”, “uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882”);
_nsmgr.AddNamespace(“dt”, “uuid:C2F41010-65B3-11d1-A29F-00AA00C14882”);
_nsmgr.AddNamespace(“రూ”, “పాత్ర:స్కీమాస్-Microsoft-com:rowset”);
_nsmgr.AddNamespace(“నుండి”, “#RowsetSchema”);

}
_nsmgr తిరిగి;
}
}
ప్రైవేట్ పద్ధతి TypeFromField(XmlElement రంగంలో)
{
స్విచ్ (field.GetAttribute(“పద్ధతి”))
{
కేసు “తేదీసమయం”:
typeof తిరిగి(తేదీసమయం);
కేసు “పూర్ణాంకము”:
typeof తిరిగి(పూర్ణాంకానికి);
కేసు “సంఖ్య”:
typeof తిరిగి(ఫ్లోట్);
డిఫాల్ట్:
typeof తిరిగి(స్ట్రింగ్);
}
}

4 comments to Retreiving List Content through WebService in SharePoint 2003

ఒక Reply వదిలి

మీరు ఉపయోగించవచ్చు ఈ HTML టాగ్లు

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