日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[Sharepoint2007对象模型]第三回:Web应用程序(SPWebApplication)

發(fā)布時間:2023/12/10 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [Sharepoint2007对象模型]第三回:Web应用程序(SPWebApplication) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

在Sharepoint的管理中心創(chuàng)建一個網(wǎng)站的順序大致如下:創(chuàng)建Web應(yīng)用程序-〉創(chuàng)建網(wǎng)站集。所以Web應(yīng)用程序是網(wǎng)站的一個基礎(chǔ),在一個Web應(yīng)用程序下可以創(chuàng)建多個網(wǎng)站,本回就主要來介紹Web應(yīng)用程序這個對象模型以及如何使用對象模型來創(chuàng)建一個Web應(yīng)用程序。
首先來看看Web應(yīng)用程序主要包含哪些內(nèi)容:
1、網(wǎng)站集,指的是這個Web應(yīng)用程序包含哪些網(wǎng)站,我們可以通過Sharepoint的管理中心看到:

對應(yīng)的對象模型為:SPSite

????????????TreeNode?nodeSite?=?nodeWeb.Nodes.Add("網(wǎng)站集");
????????????foreach?(SPSite?site?in?application.Sites)
????????????{
????????????????nodeSite.Nodes.Add(site.Url);
????????????}


2、網(wǎng)站功能集,指的是這個web應(yīng)用程序下包含哪些Feature,Feature是Sharepoint中一個比較重要的功能,可以參看我之前的文章,它對應(yīng)的對象模型是:SPFeature

????????????TreeNode?nodeFeature?=?nodeWeb.Nodes.Add("網(wǎng)站功能集");
????????????foreach?(SPFeature?feature?in?application.Features)
????????????{
????????????????nodeFeature.Nodes.Add(GetFeatureName(feature.Definition));
????????????}


3、作業(yè),指的是這個web應(yīng)用程序有哪些計時器作業(yè),它的對象模型是:SPRunningJob

????????????TreeNode?nodeRunningJob?=?nodeWeb.Nodes.Add("作業(yè)");
????????????foreach?(SPRunningJob?job?in?application.RunningJobs)
????????????{
????????????????nodeRunningJob.Nodes.Add(job.JobDefinitionTitle);
????????????}

在Sharepoint的管理中心可以看到:


4、作業(yè)定義,是包含作業(yè)的一些定義信息,對應(yīng)的對象模型為:SPJobDefinition

????????????TreeNode?nodeJobDef?=?nodeWeb.Nodes.Add("作業(yè)定義");
????????????foreach?(SPJobDefinition?jobDef?in?application.JobDefinitions)
????????????{
????????????????nodeJobDef.Nodes.Add(jobDef.DisplayName);
????????????}


執(zhí)行后的截圖如下:
?

創(chuàng)建Web應(yīng)用程序
在Sharepoint的管理中心可以通過界面創(chuàng)建Web應(yīng)用程序,在界面上我們可以看到創(chuàng)建時主要需要如下屬性:IIS 網(wǎng)站、安全性配置、負載平衡的 URL、應(yīng)用程序池、數(shù)據(jù)庫名稱和驗證。通過對象模型同樣可以實現(xiàn)以上操作
首先需要取得創(chuàng)建Web應(yīng)用程序的創(chuàng)建類

SPWebApplicationBuilder?webAppBlder?=?new?SPWebApplicationBuilder(CurrentFarm);


設(shè)置IIS站點屬性

????????????webAppBlder.Id?=?Guid.NewGuid();
????????????webAppBlder.Port?=?9002;
????????????webAppBlder.RootDirectory?=?new?System.IO.DirectoryInfo(@"C:\Inetpub\wwwroot\wss\VirtualDirectories\9002");

這里我們指定創(chuàng)建的web站點的端口為9002

設(shè)置應(yīng)用程序池的屬性

?

????????????webAppBlder.ApplicationPoolId?=?"TestApp?Pool-9012";
????????????webAppBlder.IdentityType?=?IdentityType.SpecificUser;
????????????webAppBlder.ApplicationPoolUsername?=?@"****\****";
????????????SecureString?appPoolPwd?=?new?SecureString();
????????????appPoolPwd.AppendChar('*');
????????????appPoolPwd.AppendChar('*');
????????????appPoolPwd.AppendChar('*');
????????????appPoolPwd.MakeReadOnly();
????????????webAppBlder.ApplicationPoolPassword?=?appPoolPwd;

主要是指定IIS應(yīng)用程序池的名稱和訪問用戶名、密碼等屬性

web應(yīng)用程序的安全性設(shè)置:

????????????webAppBlder.UseNTLMExclusively?=?true;?
????????????webAppBlder.AllowAnonymousAccess?=?false;
????????????webAppBlder.UseSecureSocketsLayer?=?false;

在這里設(shè)置為使用NTLM驗證,在Sharepoint中使用了NTLM和Kerberos兩種驗證方式,Kerberos相對來說比較復(fù)雜一點的。不使用SSL,不允許匿名訪問

設(shè)置負載平衡的 URL:

????????????webAppBlder.DefaultZoneUri?=?new?Uri("http://*****:9002");


設(shè)置web應(yīng)用程序的數(shù)據(jù)庫屬性:

????????????webAppBlder.CreateNewDatabase?=?true;
????????????webAppBlder.DatabaseServer?=?"*****";
????????????webAppBlder.DatabaseName?=?"TestApp9002";
????????????webAppBlder.DatabaseUsername?=?string.Empty;

這里數(shù)據(jù)庫用戶名設(shè)為空值,表示使用Windows集成認證的方式

創(chuàng)建Web應(yīng)用程序

SPWebApplication?webApp?=?webAppBlder.Create();

實際的在Sharepoint的服務(wù)器場中創(chuàng)建一個web應(yīng)用程序

設(shè)置Web應(yīng)用程序的常規(guī)屬性

???????????webApp.DefaultTimeZone?=?45;
????????????webApp.Name?=?"TestApp-9002";
????????????webApp.Update();

這里的時區(qū)45表示的是GMT+08:00北京時區(qū)
這里的設(shè)置主要是模擬sharepoint管理中心里<Web應(yīng)用程序常規(guī)設(shè)置>中的配置

創(chuàng)建 IIS Web 應(yīng)用程序和應(yīng)用程序池

webApp.Provision();


通過以上步驟就可以創(chuàng)建一個標準的Web應(yīng)用程序了,當然現(xiàn)在創(chuàng)建的Web應(yīng)用程序還是一個空殼子,沒有實質(zhì)內(nèi)容。在下一回中我會重點介紹網(wǎng)站集(SPSite)這個對象模型,在Web應(yīng)用程序里創(chuàng)建網(wǎng)站集來實現(xiàn)Web網(wǎng)站的訪問。

總結(jié)

以上是生活随笔為你收集整理的[Sharepoint2007对象模型]第三回:Web应用程序(SPWebApplication)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。