惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

The Hacker News
The Hacker News
C
Cisco Blogs
P
Privacy & Cybersecurity Law Blog
Cloudbric
Cloudbric
S
Security Affairs
PCI Perspectives
PCI Perspectives
The Last Watchdog
The Last Watchdog
AWS News Blog
AWS News Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
N
News and Events Feed by Topic
W
WeLiveSecurity
T
Tenable Blog
L
LINUX DO - 最新话题
T
Tor Project blog
Help Net Security
Help Net Security
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
P
Proofpoint News Feed
爱范儿
爱范儿
O
OpenAI News
Hacker News - Newest:
Hacker News - Newest: "LLM"
Y
Y Combinator Blog
I
Intezer
C
Check Point Blog
Stack Overflow Blog
Stack Overflow Blog
Recent Announcements
Recent Announcements
Google DeepMind News
Google DeepMind News
S
Securelist
P
Privacy International News Feed
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
V
Vulnerabilities – Threatpost
Schneier on Security
Schneier on Security
量子位
SecWiki News
SecWiki News
L
Lohrmann on Cybersecurity
T
Threat Research - Cisco Blogs
Recent Commits to openclaw:main
Recent Commits to openclaw:main
M
MIT News - Artificial intelligence
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Scott Helme
Scott Helme
H
Help Net Security
Vercel News
Vercel News
云风的 BLOG
云风的 BLOG
Spread Privacy
Spread Privacy
Know Your Adversary
Know Your Adversary
I
InfoQ
TaoSecurity Blog
TaoSecurity Blog
Blog — PlanetScale
Blog — PlanetScale
N
News | PayPal Newsroom
小众软件
小众软件
C
CERT Recently Published Vulnerability Notes

博客园 - 程序人生-123

如何科学设计自己的网站网页 如何利用Visual Studio创建自己的模板 网页设计中的页面尺寸标准 javascript小技巧之大全集 自定义服务器控件开发 网页META属性简介 CSS和JavaScript标签对照表 网站页面设计中的Css十大注意 网站压力测试 页面跳转 XHTML DHTML SHTML的区别 交换机路由器的组网 色彩搭配——网页设计技巧 怎样设计网页 Ping命令技巧 IE6、IE7、IE8共存方法 开始→运行→命令集锦 using关键字的用法以及作用 SharePoint Designer 的利与弊
MOSS 对象模型的简单开发
程序人生-123 · 2008-03-13 · via 博客园 - 程序人生-123

下面介绍一下MOSS对象模型的简单介绍,希望那些才接触MOSS的同仁们,快点入门,希望大家共同进步。
protected void GetSitesAndGroups()
{
    string userList = SPEncode.HtmlEncode(TextBox1.Text) +
        " is a user in the following webs:<BR>";

    SPSite mySite = SPContext.Current.Site;
    SPWebCollection allWebs = mySite.AllWebs;

    foreach (SPWeb subWeb in allWebs)
    {
        string listGroups = "";

        /*Use AllUsers not Users to ensure you find the user*/
        SPUserCollection allUsers = subWeb.AllUsers;
        foreach (SPUser user in allUsers)
        {
            if (user.LoginName.ToUpper() == TextBox1.Text.ToUpper())
            {
                SPGroupCollection allGroups = user.Groups;
                foreach (SPGroup group in allGroups)
                {
                    listGroups += SPEncode.HtmlEncode(group.Name) + "  ";
                }
                userList += subWeb.ServerRelativeUrl.ToString() +
                    " -- " + listGroups + "<BR>";
            }
        }
    }
    Label1.Text = userList;
}

//简单利用SPWEB遍历所有的LIST
static void Main(string[] args)
{
    SPSite siteCollection = new SPSite("http://Server_Name");
    SPWebCollection sites = siteCollection.AllWebs;

    foreach (SPWeb site in sites)
    {
        SPListCollection lists =  site.Lists;

        Console.WriteLine("Site: " + site.Name + "  Lists: "
           + lists.Count.ToString());
    }

    Console.WriteLine("Press ENTER to continue");
    Console.ReadLine();
}

SPWeb mySite = SPContext.Current.Web;

output.Write(SPEncode.HtmlEncode(mySite.Title));

SPWebCollection subSites = mySite.Webs;

foreach(SPWeb site in subSites)
{

   output.Write(SPEncode.HtmlEncode(site.Title) + "<BR>");

   SPListCollection lists=site.Lists;

   foreach(SPList list in lists)
   {

      if (list.ItemCount>10)
      {
          output.Write(SPEncode.HtmlEncode(list.Title) + " : " +
             list.ItemCount + "<BR>");
      }
   }
}

//增加一个WEB
SPWeb mySite = SPContext.Current.Web;
SPWebCollection subSites = mySite.Webs;
string currentTemplate = mySite.WebTemplate;

string siteUrl = TextBox1.Text.ToString();
string siteTitle = TextBox2.Text.ToString();
string siteDescription = TextBox3.Text.ToString();

subSites.Add(siteUrl, siteTitle, siteDescription, 1033,
   currentTemplate, true, false);

//增加一个WEB,定制指定的模板 

SPWeb mySite = SPContext.Current.Web;
SPListCollection lists = mySite.Lists;

string listTitle = TextBox1.Text;
string listDescription = TextBox2.Text;
string listType = ListBox1.SelectedItem.Text;

SPListTemplateType listTemplateType = new SPListTemplateType();

switch(listType)
{
    case "Generic List":
    {
        listTemplateType = SPListTemplateType.GenericList;
        break;
    }

    case "Events":
    {
        listTemplateType = SPListTemplateType.Events;
        break;
    }

    case "Announcements":
    {
        listTemplateType = SPListTemplateType.Announcements;
        break;
    }
}

lists.Add(listTitle, listDescription, listTemplateType);

SPSite siteCollection = SPContext.Current.Site;
SPWeb mySite = SPContext.Current.Web;

SPListTemplateCollection listTemplates
   = siteCollection.GetCustomListTemplates(mySite);
SPListTemplate listTemplate = listTemplates["Custom List Template"];
mySite.Lists.Add("Custom List", "A list created from
   a custom list template in the list template catalog", listTemplate);

//删除指定LIST
SPWeb mySite = SPContext.Current.Web;
SPListCollection lists = mySite.Lists;

SPList list = lists[TextBox1.Text];
System.Guid listGuid = list.ID;

lists.Delete(listGuid);

//查询
SPWeb mySite = SPContext.Current.Web;
SPList list = mySite.Lists["Books"];

SPQuery query = new SPQuery();
query.Query = "<Where><Gt><FieldRef Name='Stock'/><Value Type='Number'>100</Value></Gt></Where>";

SPListItemCollection myItems = list.GetItems(query);

foreach (SPListItem item in myItems)
{
   Response.Write(SPEncode.HtmlEncode(item["Title"].ToString()) + "<BR>");
}

private SPWeb mySite;

private void Page_Load(object sender, System.EventArgs e)
{
   mySite = SPControl.GetContextWeb(Context);
}

private void Button1_Click(object sender, System.EventArgs e)
{
   int maxSize = Convert.ToInt32(TextBox1.Text);

   SPFolder myFolder = mySite.GetFolder("Shared Documents");
   SPFileCollection myFiles = myFolder.Files;

   foreach (SPFile file in myFiles)
   {

      if (file.Length>(maxSize*1024))
      {
         Response.Write(SPEncode.HtmlEncode(file.Name) + ": "
             + file.Length/1024 + "kb<BR>");
         file.CopyTo("Archive/" + file.Name, true);
      }
   }
}

public void UploadFile(string srcUrl, string destUrl)
{
    if (! File.Exists(srcUrl))
    {
        throw new ArgumentException(String.Format("{0} does not exist",
            srcUrl), "srcUrl");
    }

    SPWeb site = new SPSite(destUrl).OpenWeb();

    FileStream fStream = File.OpenRead(srcUrl);
    byte[] contents = new byte[fStream.Length];
    fStream.Read(contents, 0, (int)fStream.Length);
    fStream.Close();

    EnsureParentFolder(site, destUrl);
    site.Files.Add(destUrl, contents);
}

大家在机器上面测试一下,都明白拉

转自:

http://www.cnblogs.com/wanghao-3/archive/2007/07/03/803950.html