Bæta við webreference að Lists.asmx í Sharepoint síðuna.
http://localhost / _vti_bin / Lists.asmx
(SharePoint raunverulegur Símaskrá URL / _vti_bin / Lists.asmx
skrifa eftirfarandi aðferðum í Webservice þínum.
einkaaðila data.DataTable GetDataTableFromWSS(bool onlySchema)
{
band WssSiteUrl = http://192.168.111.21;
band WssSiteUrl = ConfigurationSettings.AppSettings[“WssSiteUrl”];
WssSite.Lists lista = nýju WssSite.Lists();
lists.Url = WssSiteUrl + “_vti_bin / Lists.asmx”;
lists.Credentials = System.Net.CredentialCache.DefaultCredentials;
lists.PreAuthenticate = true;
//þú þarft að standast Listi nafn hér
band CommandText = “Starfsmaður Info”;
XmlNode = ListCollectionNode lists.GetListCollection();
Listi XmlElement = (XmlElement)ListCollectionNode.SelectSingleNode(String.Format(“WSS:Listi[@ Title = '{0}']”, CommandText), NameSpaceMgr);
ef (Listi == null)
{
kasta nýju ArgumentException(String.Format(“Listinn {0} fannst ekki í síðuna {1}”, CommandText, WssSiteUrl));
}
band TechListName = List.GetAttribute(“Nafn”);
data.DataTable afleiðing = new data.DataTable(“listi”);
XmlNode ListInfoNode = lists.GetList(TechListName);
System.Text.StringBuilder fieldRefs = new System.Text.StringBuilder();
System.Collections.Hashtable DisplayNames = new System.Collections.Hashtable();
framhandleggur (XmlElement Field í ListInfoNode.SelectNodes(“WSS:Reitir / WSS:Field”, NameSpaceMgr))
{
ef (Field.HasChildNodes)
{
framhandleggur (XmlElement Fld í Field.SelectNodes(“WSS:Reitir / WSS:Field”, NameSpaceMgr))
{
band FieldName = Fld.GetAttribute(“Nafn”);
band FieldDisplayName = Fld.GetAttribute(“DISPLAYNAME”);
ef (result.Columns.Contains(FieldDisplayName))
{
FieldDisplayName = FieldDisplayName + ” (” + FieldName + “)”;
}
result.Columns.Add(FieldDisplayName, TypeFromField(Field));
fieldRefs.AppendFormat(“”, FieldName);
DisplayNames.Add(FieldDisplayName, FieldName);
}
}
annars
{
band FieldName = Field.GetAttribute(“Nafn”);
band FieldDisplayName = Field.GetAttribute(“DISPLAYNAME”);
ef (result.Columns.Contains(FieldDisplayName))
{
FieldDisplayName = FieldDisplayName + ” (” + FieldName + “)”;
}
result.Columns.Add(FieldDisplayName, TypeFromField(Field));
fieldRefs.AppendFormat(“”, FieldName);
DisplayNames.Add(FieldDisplayName, FieldName);
}
}
ef (onlySchema) aftur niðurstöðu;
XmlElement reiti = ListInfoNode.OwnerDocument.CreateElement(“ViewFields”);
fields.InnerXml = fieldRefs.ToString();
XmlNode ItemsNode = lists.GetListItems(TechListName, “”, núll, sviðum, “1000000”, núll);
// Leit reitir byrja alltaf með tölugildi ID, þá ;# og þá band framsetning.
// Við erum yfirleitt aðeins áhuga á nafni, þannig að við ræma auðkenni.
System.Text.RegularExpressions.Regex CheckLookup = new System.Text.RegularExpressions.Regex(“^ D ;#”);
framhandleggur (XmlElement Liður í ItemsNode.SelectNodes(“RS:Date / Z:róður”, NameSpaceMgr))
{
data.DataRow newRow = result.NewRow();
framhandleggur (data.DataColumn horn í result.Columns)
{
ef (Item.HasAttribute(“ows_” + (band)DisplayNames[col.ColumnName]))
{
band Val = Item.GetAttribute(“ows_” + (band)DisplayNames[col.ColumnName]);
ef (CheckLookup.IsMatch((band)Val))
{
string valString = val as String;
Val = valString.Substring(valString.IndexOf(“#”) + 1);
}
// Úthlutun streng til a akur þessi ráð fyrir númer eða
// datetime gildi mun óbeint breyta þeim
newRow[með] = Val;
}
}
result.Rows.Add(newRow);
}
aftur niðurstöðu;
}
// Eftirfarandi aðgerð er notuð til að fá Nafnrými
persónulegur truflanir XmlNamespaceManager _nsmgr;
persónulegur truflanir XmlNamespaceManager NameSpaceMgr
{
fá
{
ef (_nsmgr == null)
{
_nsmgr = new XmlNamespaceManager(Ný NameTable());
_nsmgr.AddNamespace(“WSS”, “http://schemas.microsoft.com / SharePoint / sápu /”);
_nsmgr.AddNamespace(“með”, “uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882”);
_nsmgr.AddNamespace(“DT”, “uuid:C2F41010-65B3-11d1-A29F-00AA00C14882”);
_nsmgr.AddNamespace(“RS”, “urn:schemas-Microsoft-com:rowset”);
_nsmgr.AddNamespace(“á”, “#RowsetSchema”);
}
aftur _nsmgr;
}
}
einkaaðila Tegund TypeFromField(XmlElement sviði)
{
skipta (field.GetAttribute(“Tegund”))
{
ræða “Datetime”:
aftur typeof(Datetime);
ræða “Heiltölur”:
aftur typeof(INT);
ræða “Númer”:
aftur typeof(fljóta);
sjálfgefið:
aftur typeof(band);
}
}
WssSite mótmæla á þessum kóða, Ég er að fá villu á þetta, “þú ert vantar með tilskipun eða samkoma tilvísun?” einhver hugmynd
Hæ Bala,
WssSite er Webreference fyrir lists.asmx
Skál,
Uday
Excellent. Takk Uday. Your post saved me lot of time in my migration project 🙂
Þú ert velkomin Jaya