શેરપોઈન્ટ સાઈટ માં lists.asmx માટે webreference ઉમેરો.
HTTP://localhost / _vti_bin / lists.asmx
(શેરપોઈન્ટ વર્ચ્યુઅલ ડિરેક્ટરી 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 = સાચી;
//તમે અહીં યાદી નામ પસાર હોય છે
શબ્દમાળા CommandText = “કર્મચારીનું માહિતી”;
XmlNode ListCollectionNode = lists.GetListCollection();
XmlElement યાદી = (XmlElement)ListCollectionNode.SelectSingleNode(String.Format(“WSS:યાદી[@ શીર્ષક = '{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 સાથે શરૂ, પછી ;# અને પછી શબ્દમાળા પ્રતિનિધિત્વ.
// અમે સામાન્ય રીતે નામે જ રસ છે, તેથી અમે આઈડી છીનવી.
System.Text.RegularExpressions.Regex CheckLookup = નવા System.Text.RegularExpressions.Regex(“^ ડી ;#”);
foreach (ItemsNode.SelectNodes માં XmlElement વસ્તુ(“રૂ:માહિતી / z:પંક્તિ”, NameSpaceMgr))
{
data.DataRow newRow = result.NewRow();
foreach (result.Columns માં data.DataColumn ઘાટ)
{
તો (Item.HasAttribute(“ows_” + (શબ્દમાળા)DisplayNames[col.ColumnName]))
{
શબ્દમાળા વૅલ = Item.GetAttribute(“ows_” + (શબ્દમાળા)DisplayNames[col.ColumnName]);
તો (CheckLookup.IsMatch((શબ્દમાળા)કલાક))
{
શબ્દમાળા valString = વૅલ શબ્દમાળા તરીકે;
વૅલ = valString.Substring(valString.IndexOf(“#”) + 1);
}
// -નંબરો અથવા અપેક્ષા છે કે ક્ષેત્ર માટે એક શબ્દમાળા સોંપવા
// તારીખ સમય કિંમતો સર્વથા તેમને કન્વર્ટ થશે
newRow[સાથે] = એચ;
}
}
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(“તા”, “uuid:C2F41010-65B3-11d1-A29F-00AA00C14882”);
_nsmgr.AddNamespace(“રૂ”, “ફૂલદાની:સ્કીમા-માઈક્રોસોફ્ટ-કોમ:rowset”);
_nsmgr.AddNamespace(“થી”, “#RowsetSchema”);
}
_nsmgr પરત;
}
}
ખાનગી પ્રકાર TypeFromField(XmlElement ક્ષેત્રમાં)
{
સ્વીચ (field.GetAttribute(“પ્રકાર”))
{
કેસ “તારીખ સમય”:
typeof પરત(તારીખ સમય);
કેસ “પૂર્ણાંક”:
typeof પરત(ઈન્);
કેસ “સંખ્યા”:
typeof પરત(ફ્લોટ);
મૂળભૂત:
typeof પરત(શબ્દમાળા);
}
}
WssSite object on this code, I am getting error on this, “you are missing a using directive or an assembly reference?” any idea
Hi Bala,
WssSite is an Webreference for the lists.asmx
ટીમે,
ઉદય
Excellent. Thanks Uday. Your post saved me lot of time in my migration project 🙂
You are welcome Jaya