sdxh0506 发表于 2019-2-5 10:55:15

Sharepoint 捞取application下所有site 和site collection的内容最后修改时间工具C# 代码

  需求说明:
  1.捞取site collection的内容最后update时间和权限最后一次update时间;
  2.列出site collection的administrator
  3、捞取site 的内容最后update时间
  

  

  using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Administration;
using System.IO;
using System.Web;




namespace ConsoleApplication1
{
    class Program
    {
      static void Main(string[] args)
      {
            Console.WriteLine("Please input the list url:");
            String weburl = Console.ReadLine();


            InitionFile();
            //SPFolderCollection folders = web.Folders;   //get all librarys of website;
            Uri webAppUri = new Uri(weburl);
            //using (SPWeb spweb = SPWeb.WebAnonymousState)
            //{
            SPWebApplication webApplication = SPWebApplication.Lookup(webAppUri);
            writer.WriteLine("SiteName \t WebName \t SiteAdmin \t LastContentModifiedDate \t LastSecurityModifiedDate\t Url ");
            foreach (SPSite site in webApplication.Sites)
            {
                Console.WriteLine("{0} \t \t \t {1} \t {2} \t {3}", site.RootWeb, site.LastContentModifiedDate, site.LastSecurityModifiedDate, site.Url);
                writer.WriteLine("{0} \t \t \t {1} \t {2} \t {3}", site.RootWeb,site.LastContentModifiedDate, site.LastSecurityModifiedDate, site.Url);
                foreach (SPUser admin in site.RootWeb .SiteAdministrators)
                {
                  Console.WriteLine("{0}", admin);
                  writer.WriteLine("\t\t {0} ", admin);
                }

                foreach (SPWeb web in site.AllWebs)
                {


                  Console.WriteLine("\t {0} \t \t {1} \t \t {2} ", web.Title, web.LastItemModifiedDate, web.Url);
                  writer.WriteLine("\t {0} \t \t {1} \t \t {2} ", web.Title, web.LastItemModifiedDate, web.Url);
                  
                  
               


                }
                //SPSite site = new SPSite(weburl);
                //SPWeb web = site.OpenWeb();
               // SPList list = web.GetListFromUrl(weburl);
               


               
               


            }
            CloseFile();
            Console.ReadKey();
      }


      static StreamWriter writer;
      static void InitionFile()
      {
            writer = new StreamWriter("Log.txt", false);
      }
      static void CloseFile()
      {
            writer.Flush();
            writer.Close();
      }


      static void WriteLine(string msg)
      {
            writer.WriteLine(msg);
      }


       // public SPFolder GetFolder(string strUrl);


    }
}
  

  




xiaozeze 发表于 2019-2-12 11:38:38

谢谢楼主分享啊
页: [1]
查看完整版本: Sharepoint 捞取application下所有site 和site collection的内容最后修改时间工具C# 代码