這里只能激活沙盒解決方案,如果你是服務(wù)器場解決方案要去管理中心激活.
專業(yè)成都網(wǎng)站建設(shè)公司,做排名好的好網(wǎng)站,排在同行前面,為您帶來客戶和效益!創(chuàng)新互聯(lián)建站為您提供成都網(wǎng)站建設(shè),五站合一網(wǎng)站設(shè)計制作,服務(wù)好的網(wǎng)站設(shè)計公司,成都網(wǎng)站設(shè)計、做網(wǎng)站負責(zé)任的成都網(wǎng)站制作公司!
下面我將向大家介紹在SharePoint
2010中如何定制事件處理程序的Error Pages。
創(chuàng)建一個擁有自定制Error
Page的事件處理程序
首先讓我們打開VS
2010并且使用事件接受器模板創(chuàng)建一個新的事件處理程序。
我們可以選擇是創(chuàng)建一個場解決方案還是沙盒解決方案
最后選擇事件接受器的類型,由于我的這個例子是要驗證用戶的輸入內(nèi)容,所以在這里我選擇創(chuàng)建一個ItemAdding類型的事件接受器。
單擊完成,隨后我們會看到VS 2010自動為我們創(chuàng)建出了如下的結(jié)構(gòu)的項目
接下來要做的就是為我的事件處理程序添加代碼,以處理一些簡單的邏輯。打開EventReceiver1.cs,VS已經(jīng)為我們建立好了大部分的內(nèi)容,我只需添加一些核心的邏輯就可以了。
using System;
using System.Security.Permissions;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Security;
using Microsoft.SharePoint.Utilities;
using Microsoft.SharePoint.Workflow;
namespace ItemAddingWithCustomErrorPage.EventReceiver1
{
/// summary
/// 列表項事件
/// /summary
public
class EventReceiver1 : SPItemEventReceiver
{
/// summary
/// 正在添加項.
/// /summary
public
override void ItemAdding(SPItemEventProperties properties)
{
base.ItemAdding(properties);
if
(properties.AfterProperties["到期日期"]==null)
{
properties.Status = SPEventReceiverStatus.CancelWithRedirectUrl;
properties.RedirectUrl = "/_layouts/ItemAddingWithCustomErrorPage/CustomErrorPage.aspx";
}
}
}
}
下面要做的就是添加一個用于顯示錯誤信息的應(yīng)用程序頁。首先添加一個新項,仍然是在SharePoint
2010模板中,選擇應(yīng)用程序頁模板。
Visual Studio 2010會自動創(chuàng)建一個名為Layouts的映射文件夾,它會映射到SharePoint安裝目錄中的Layouts目錄。
下面要做的就是編輯這個應(yīng)用程序頁面,我們可以自由的定制它的樣式,以及其中要顯示的信息。
%@ Assembly Name="$SharePoint.Project.AssemblyFullName$" %
%@ Import Namespace="Microsoft.SharePoint.ApplicationPages" %
%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %
%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %
%@ Register Tagprefix="asp" Namespace="System.Web.UI" Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" %
%@ Import Namespace="Microsoft.SharePoint" %
%@ Assembly Name="Microsoft.Web.CommandUI, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %
%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CustomErrorPage.aspx.cs" Inherits="ItemAddingWithCustomErrorPage.Layouts.ItemAddingWithCustomErrorPage.CustomErrorPage" DynamicMasterPageFile="~masterurl/default.master" %
asp:Content
ID="PageHead" ContentPlaceHolderID="PlaceHolderAdditionalPageHead" runat="server"
/asp:Content
asp:Content
ID="Main" ContentPlaceHolderID="PlaceHolderMain" runat="server"
div
style="width:225px;float:left;"
asp:Image
ID="Image1" runat="server" ImageUrl="/_layouts/ItemAddingWithCustomErrorPage/saw.png"/
/div
div
style="width:400px;"
[SharePoint 2010]如何定制事件處理程序的Error Pages,希望能有更多的朋友能夠加入到SharePoint這個大家園中來。
/div
/asp:Content
asp:Content
ID="PageTitle" ContentPlaceHolderID="PlaceHolderPageTitle" runat="server"
這是一個自定義的錯誤信息頁面
/asp:Content
asp:Content
ID="PageTitleInTitleArea" ContentPlaceHolderID="PlaceHolderPageTitleInTitleArea" runat="server"
這是一個自定義的錯誤信息頁面
/asp:Content
OK,到這里代碼就全部寫完了,讓我們來測試一下吧,直接按"F5"就可以了,VS
2010會自動幫我們部署到SharePoint網(wǎng)站中。
沙盒解決方案
可以將 SharePoint Server 解決方案直接部署到 Microsoft SharePoint Server 2010 上,或?qū)⑵洳渴鸬揭粋€沙盒 內(nèi)。沙盒是一個受限制的執(zhí)行環(huán)境,可使應(yīng)用程序僅訪問某些資源,并使在沙盒中發(fā)生的問題不會影響服務(wù)器環(huán)境的其余部分。
部署到沙盒中的解決方案稱為沙盒解決方案,它們不能使用某些計算機和網(wǎng)絡(luò)資源,也不能訪問它們部署到的網(wǎng)站集以外的內(nèi)容。
因為沙盒解決方案不會影響整個服務(wù)器場,因此不必由服務(wù)器場管理員進行部署。沙盒解決方案可以由網(wǎng)站集管理員部署,或者,在某些情況中,可由對網(wǎng)站集根目錄具有完全控制訪問權(quán)的用戶部署。只有服務(wù)器場管理員才可以提升沙盒解決方案,使其直接在沙盒之外的服務(wù)器場中運行。
在以下兩種方案中,特別適合使用沙盒解決方案:
某個組織希望在 SharePoint Server 生產(chǎn)網(wǎng)站上運行員工代碼,并且此代碼沒有經(jīng)過嚴格的檢查和測試。
宿主希望讓所承載的 SharePoint Server 網(wǎng)站的所有者上載和運行自定義代碼。
本文介紹與沙盒解決方案有關(guān)的概念,說明沙盒解決方案與在場中部署的解決方案的差異,并總結(jié)部署和運行沙盒解決方案的方式。本文未包含有關(guān)配置沙盒處理或部署沙盒解決方案的詳細過程。
本文內(nèi)容:
部署和運行沙盒解決方案
隔離沙盒解決方案
沙盒解決方案不能包含的內(nèi)容
沙盒解決方案與場解決方案的比較
使用沙盒解決方案的好處
部署和運行沙盒解決方案
SharePoint Server 應(yīng)用程序的任何頁面除了包含直接在場中運行的組件之外,還可包含某些在沙盒中運行的組件。部署到場中的組件將在 Internet Information Services (IIS) 工作進程中運行。部署到沙盒中的組件將在沙盒進程中運行。
下面的列表標識了一些可能會在沙盒中部署的組件:
Web 部件
事件接收器
功能接收器
自定義 Microsoft SharePoint Designer 工作流活動
Microsoft InfoPath 業(yè)務(wù)邏輯
以下步驟介紹如何部署沙盒解決方案:
1. 服務(wù)器場管理員執(zhí)行以下任務(wù)。這些任務(wù)只能執(zhí)行一次。
· 服務(wù)器場管理員啟用沙盒處理,并在每個將運行沙盒解決方案的服務(wù)器上啟動沙盒服務(wù)。
· 服務(wù)器場管理員決定使用哪種負載平衡方案。該負載平衡方案將應(yīng)用于服務(wù)器場中所有網(wǎng)站集中的所有沙盒解決方案。
· 服務(wù)器場管理員設(shè)置資源配額,一個網(wǎng)站集內(nèi)的所有沙盒解決方案組合在一起不可以超過此配額。
2. 網(wǎng)站集管理員或擁有對網(wǎng)站集根目錄的完全控制訪問權(quán)的用戶將一個解決方案上載到網(wǎng)站集的解決方案庫中。
3. 網(wǎng)站集管理員激活解決方案。如果解決方案不包含程序集,則擁有對網(wǎng)站集根目錄的完全控制訪問權(quán)的用戶也可以激活解決方案。將針對解決方案運行驗證工具。如果解決方案驗證失敗,則不會將其激活。
當(dāng)執(zhí)行有關(guān)運行一個沙盒解決方案的請求時,將會發(fā)生以下活動:
1. 根據(jù)負載平衡方案,SharePoint Server 決定在哪個服務(wù)器上運行解決方案。如果負載平衡是本地的,則在與服務(wù)請求的同一服務(wù)器上運行解決方案。如果負載平衡是遠程的,則根據(jù)解決方案關(guān)聯(lián)性選擇運行解決方案的服務(wù)器。在這兩種情況下,服務(wù)器都必須運行沙盒服務(wù)。
2. SharePoint Server 選擇一個沙盒工作進程來在其中運行解決方案,并將一個“填充碼”動態(tài)鏈接庫 (dll) 加載到該進程中,然后將解決方案程序集加載到該進程中。
3. 在解決方案運行過程中,解決方案的代碼在由 SharePoint Server 執(zhí)行之前會先通過填充碼。如果解決方案代碼試圖使用限制沙盒解決方案使用的 API,則填充碼將發(fā)出異常信號而不讓代碼通過并運行。
4. SharePoint Server 監(jiān)控沙盒解決方案使用的資源。如果沙盒解決方案超過硬性限制(例如,如果它使用超過預(yù)定義數(shù)量的 CPU 時間),則 SharePoint Server 會中止沙盒工作進程。如果一個網(wǎng)站集中所有沙盒解決方案的組合超過了此網(wǎng)站集的資源配額,則 SharePoint Server 會在當(dāng)天的剩余時間內(nèi)關(guān)閉此網(wǎng)站集中的所有沙盒解決方案。
5. 網(wǎng)站集管理員可以監(jiān)控沙盒解決方案使用的資源,也可以停用網(wǎng)站集中的解決方案。
如有必要,服務(wù)器場管理員可以阻止解決方案在場中運行。或者,服務(wù)器場管理員也可以移除在沙盒中運行解決方案的要求。如果移除在沙盒中運行的要求,則當(dāng)解決方案在服務(wù)器場中的任何網(wǎng)站集中運行時,它將不再在沙盒中運行。
隔離沙盒解決方案
可以按不同的程度隔離沙盒解決方案。每個附加的隔離級別可增加您保護 SharePoint Server 網(wǎng)站的主要部分的能力,從而避開可能消耗太多資源的代碼。在第一級別,沙盒代碼在一個權(quán)限受限制的獨立進程中運行。代碼訪問安全 (CAS) 限制代碼可執(zhí)行的操作。通過使用遠程負載平衡并且僅對特定服務(wù)器運行沙盒服務(wù),可增加隔離。在生產(chǎn)環(huán)境中,推薦您使用遠程負載平衡,并專門使用一個單獨的服務(wù)器來運行沙盒解決方案。
沙盒解決方案不能包含的內(nèi)容
SharePoint Server 解決方案必須包含名為 manifest.xml 的配置文件,也可以包含附加的配置文件和程序集。如果解決方案將在沙盒中運行,則會將程序集和配置文件限制為它們可以包含的內(nèi)容。
下面的列表標識了將在沙盒中運行的程序集不能做的最常見的事情。
連接到不在本地服務(wù)器上的資源。
訪問數(shù)據(jù)庫。
更改線程模型。
調(diào)用非托管代碼。
寫入到磁盤。
訪問不同網(wǎng)站集中的資源。
manifest.xml 文件引用功能文件;功能文件引用元素文件;元素文件包含 feature 元素。在沙盒解決方案中唯獨允許的 feature 元素有:
ContentType
Field
CustomAction
Module
ListInstance
ListTemplate
Receivers
WebTemplate
WorkflowAssociation
PropertyBag
WorkflowActions
當(dāng)前文章:Sharepoint沙盒 win 沙盒
新聞來源:http://muchs.cn/article36/doesosg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、關(guān)鍵詞優(yōu)化、微信公眾號、標簽優(yōu)化、商城網(wǎng)站、網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)