示例#1
0
        private void ProxyGetListCollectionCompleted(object sender, GetListCollectionCompletedEventArgs e)
        {
            var tcs = (TaskCompletionSource <XmlNode>)e.UserState;

            if (e.Cancelled)
            {
                tcs.TrySetCanceled();
            }
            else if (e.Error != null)
            {
                tcs.TrySetException(e.Error);
            }
            else
            {
                tcs.TrySetResult(e.Result);
            }
        }
示例#2
0
        void Service_GetListCollectionCompleted(object sender, GetListCollectionCompletedEventArgs e)
        {
            _excelParams.AddToLog("Retrieved lists");

            try
            {
                XElement xresults = e.Result;
                _xRows = xresults.Descendants(NSSoap + "List");


                string[] delims = { "|" };
                string[] listExceptions = Constants.InitParams.ListExceptions(_page).Split(delims, StringSplitOptions.RemoveEmptyEntries);
                foreach (XElement element in _xRows)
                {
                    SPList list = InitializeList(element);
                    if (!listExceptions.Contains(list.ListName) && !list.Hidden && list.BaseType == SPList.BaseTypes.List)
                        Lists.Add(list);
                }
            }
            catch (Exception ex)
            {
                _excelParams.AddToLog("Error parsing list collection:\n" + ex.ToString());
            }

            if (ListsRetrieved != null)
                ListsRetrieved(this, null);
        }