![](/img/trans.png)
[英]QueryStringParameter for SqlDataSource for Stored Procedure
[英]Redirect on invalid QueryStringParameter to LinqDataSource
我有以下LinqDataSource:
<asp:LinqDataSource ID = "agreementDs"
ContextTypeName = "AdministrationDataContext"
TableName = "Agreements"
runat = "server"
EnableUpdate = "true"
Where = "AgreementId=@AgreementId">
<WhereParameters>
<asp:QueryStringParameter QueryStringField = "AgreementId"
Name = "AgreementId"
Type = "Int32"
DefaultValue = "-1" />
</WhereParameters>
</asp:LinqDataSource>
應該從協議數據庫表中獲取一行。 如何檢測參數AgreementId是否為-1,並且是否為404頁面提供服務或將用戶重定向到我網站的首頁? 我無法弄清楚將這個邏輯插入后面的代碼中的正確位置是什么。
更新:不僅應在AgreementId參數為-1時重定向用戶。 當數據源不包含任何行時,它應該總是發生。
在您的LINQ數據源中添加一個“ OnSelecting”方法名稱,然后從該方法中檢查所需的內容:
<asp:LinqDataSource runat="server" OnSelecting="ldsSelecting" .... />
protected void ldsSelecting(object o, LinqDataSourceSelectEventArgs e)
{
// check for query string or other stuff here, redirect if needed
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.