我在「任務」列表上創建了一個事件接收器。無法從Sharepoint事件接收器重定向
如果「到期日期」爲null
那麼用戶應該被重定向到自定義錯誤頁面。
自定義錯誤頁駐留在「Layouts」目錄下的SharePoint映射文件夾中。
事件接收器代碼如下:
public override void ItemAdding(SPItemEventProperties properties)
{
try
{
if (properties.AfterProperties["Due Date"] == null)
{
properties.Status = SPEventReceiverStatus.CancelWithRedirectUrl;
properties.RedirectUrl = "_layouts/CustomErrorPage/DueDateErrorPage.aspx";
}
}
catch (Exception ex)
{
}
}
定製錯誤頁面這是類型「應用程序頁面」具有名稱。 「DueDateErrorPage.aspx」。該標記是:
<asp:Content ID="PageHead" ContentPlaceHolderID="PlaceHolderAdditionalPageHead" runat="server">
</asp:Content>
<asp:Content ID="Main" ContentPlaceHolderID="PlaceHolderMain" runat="server">
ERROR : You cannot create the task without due date
</asp:Content>
<asp:Content ID="PageTitle" ContentPlaceHolderID="PlaceHolderPageTitle" runat="server">
Custom Error Page
</asp:Content>
<asp:Content ID="PageTitleInTitleArea" ContentPlaceHolderID="PlaceHolderPageTitleInTitleArea" runat="server" >
Custom Error Page
</asp:Content>
雖然在IIS,下_layouts豬病的頁面可我得到這個輸出。
我應該如何解決這個問題?請幫忙。
謝謝您的答覆先生,我是初學者到SharPoint和練習。我所做的更改按你的建議,但現在錯誤發生了變化。錯誤顯示「事件接收方已取消請求.. @Steve B –
@RiyazKalva:我認爲解決問題的最佳方法是遵循方法2.如果您的要求是使截止日期爲強制性,那麼讓SharePoint處理此操作,並將該字段直接標記爲列表結構中的強制項。 –