开发者

Help with DetailsView

Im new to webforms.

Right now I have a DetailsView of a single client... what I want is that before the view is displayed, if the client doesnt have an email defined, redirect to a different page.. how can I get the data from the objectdatasource and redirect??

help please.

Here's my ObjectDataSource

<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" 
        InsertMethod="Insert" OldValuesParameterFormatString="original_{0}" 
        SelectMethod="GetDataByCodigo" 
        TypeName="PanamaBanks.DataSetTableAdapters.ClientesTableAdapter">
        <InsertParameters>
            <asp:Parameter Name="Codigo" Type="String" />
            <asp:Parameter Name="CodigoBanco" Type="String" />
            <asp:Parameter Name="Nombre" Type="String" />
            <asp:Parameter Name="Apellido" Type="Strin开发者_Go百科g" />
            <asp:Parameter Name="Negocio" Type="String" />
            <asp:Parameter Name="Email" Type="String" />
            <asp:Parameter Name="Telefono" Type="String" />
        </InsertParameters>
        <SelectParameters>
            <asp:FormParameter DefaultValue="0" FormField="codigo" Name="Codigo" 
                Type="String" />
        </SelectParameters>
    </asp:ObjectDataSource>


You can check emails value while DetailsView is being binded to data by attaching DataBound event like this: in aspx page

<asp:DetailsView runat="server" ID="detailsView" 
            ondatabound="detailsView_DataBound"></asp:DetailsView>

and in code behind

protected void detailsView_DataBound(object sender, EventArgs e) { DetailsView view = (DetailsView)sender;

DataRowView drv = (DataRowView)view.DataItem;
if (drv != null)
{
    if (Convert.IsDBNull(drv["Email"]))
        //redirect - email column has null value
        Redirect();

    if (drv["Email"].ToString().Trim() == string.Empty)
        //redirect - email column is empty 
        Redirect();
}

}


Do this in your codebehind. Check for a null value in the email field, and redirect if found. Something like this (C#):

if(client.email==""){
    HttpContext.Current.Response.ReDirect("differentPage.aspx");
}
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜