簡體   English   中英

如何在ClientContext.ExecuteQuery之前檢查Sharepoint連接

[英]How to check Sharepoint connectivity before ClientContext.ExecuteQuery

我對SharePoint很陌生。 在ClientContext.ExecuteQuery之前檢查Sharepoint站點連接的最快,最有效的方法是什么。

ClientContext ctx = new ClientContext(ConfigurationManager.AppSettings["sharepoint siteUrl"]);

float pageLoadTime = getPageLoadTime(ctx);
if(pageLoadTime > 0.5)
{
  MessageBox.Show("Sharepoint site is not available!");
  return;
}
//do very heavy query
....
ctx.ExecuteQuery();

沒有這種標准方法可以做到這一點。 但是您可以像下面的代碼那樣實現

   using (ClientContext sourceContext = new ClientContext("Sharepoint Url"))
        {
            try
            {                    
                sourceContext.ExecuteQuery();
                List list = sourceContext.Web.Lists.GetByTitle("Test");
                ListItemCollection itemColl = list.GetItems(CamlQuery.CreateAllItemsQuery());
                sourceContext.Load(itemColl);
                sourceContext.ExecuteQuery();
            }                
            catch (System.Net.WebException ex)
            {
                if (ex.Message == "The remote server returned an error: (404) Not Found.")
                {
                    Console.WriteLine("SharePoint not available");
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }              
        }

因為“ ExecuteQuery”是通過Client.svc wcf服務連接到SharePoint的方法。

希望這可以幫助...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM