Помощь с DetailsView - PullRequest
       7

Помощь с DetailsView

0 голосов
/ 24 ноября 2010

Я новичок в веб-формах.

Сейчас у меня есть DetailsView одного клиента ... я хочу, чтобы перед отображением представления, если у клиента не было определено электронное письмо, перенаправить надругая страница .. как я могу получить данные из objectdatasource и перенаправить ??

помогите пожалуйста.

Вот мой 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="String" />
            <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>

Ответы [ 2 ]

1 голос
/ 24 ноября 2010

Вы можете проверить значение электронных писем, когда DetailsView привязывается к данным, прикрепив событие DataBound, например: на странице aspx

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

и в коде

protected void detailsViewView_DataBound (отправитель объекта, EventArgs e) {DetailsView view = (DetailsView) отправитель;

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();
}

}

0 голосов
/ 24 ноября 2010

Сделайте это в своем коде. Проверьте нулевое значение в поле электронной почты и перенаправьте, если он найден. Как то так (C #):

if(client.email==""){
    HttpContext.Current.Response.ReDirect("differentPage.aspx");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...