Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Problema con response di una variabile

    Ciao a tutti
    in una pagina aspx sto creando un form per passare dei dati ad un'altra pagina
    uno di questi dati è di tipo datetime
    ma prima di inserirlo in un input text voglio verificare che non sia passato da un'altro form precedente o in querystring
    per fare questo ho creato questo codice con la condizione di seguito scritto

    codice:
       DateTime DataInizio;
        DataInizio = Convert.ToDateTime(Request["DataInizio"]);
        if (DataInizio.ToString() == "")
        {
    
    
            DataInizio = DateTime.Today;
            
        }
    
    
    
    
        DateTime DataFine = Convert.ToDateTime(Request["DataFine"]);
        if (DataFine.ToString() == "")
        {
    
    
            DataFine = DataInizio.AddDays(7);
    
    
        }

    l'errore però c'e l'ho in questo punto
    codice:
        <input type="text" name="DataInizio" value="<%=DataInizio.ToString()%>"  />
            <input type="text" name="DataFine" value="<%=DataFine.ToString()%>"  />
    mi dice
    Errore 1 Il nome 'DataInizio' non esiste nel contesto corrente
    Errore 2 Il nome 'DataFine' non esiste nel contesto corrente

    cosa sto sbagliando?
    Ciao e grazie

  2. #2
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    lo faccio in basic che mi viene meglio

    codice:
        Protected Property DataInizio As DateTime
        Protected Property DataFine As DateTime
    
        Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
            Dim di As String = Request("DataInizio")
            If (di = "") Then
                DataInizio = DateTime.Today
            Else
                DataInizio = Convert.ToDateTime(di)
            End If
    
            Dim df As String = Request("DataFine")
            If (df = "") Then
                DataFine = DataInizio.AddDays(7)
            Else
                DataFine = Convert.ToDateTime(df)
            End If
    
        End Sub
    Pietro

  3. #3
    [QUOTE=pietro09;25234686]lo faccio in basic che mi viene meglio
    Intanto Grazie per avermi risposto ma
    ho convertito quello che hai scritto tu in c#
    ma nulla da fare
    ti allego tutta la pagina
    l'errore è sempre non esiste nel contesto corrente

    codice:
    
    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="scaricoPacchetti.aspx.cs" Inherits="WsNet_scaricoPacchetti" %>
    
    
    <%
        
        
        String di = Request["DataInizio"];
        String df = Request["DataFine"];
        
        DateTime DataInizio;
        DateTime DataFine;
        
       
        if (di == "")
        {
    
    
            DataInizio = DateTime.Today;
    
    
        }
        else
        {
            DataInizio = Convert.ToDateTime(di);
        }
    
    
       
    
    
        if (df == "")
        {
    
    
            DataFine = DataInizio.AddDays(7);
    
    
        }
        else
        {
    
    
           DataFine = Convert.ToDateTime(df);
        }
        
        
         %>
    <!DOCTYPE html>
    
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <title></title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div id="testo">
        <input type="text" name="DataInizio" value="<%=DataInizio.ToString()%>"  />
            <input type="text" name="DataFine" value="<%=DataFine.ToString()%>"  />
        </div>
        </form>
    </body>
    </html>

  4. #4
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    dovresti scrivere quel codice nell'evento load e assicurarti che quelle due variabile (meglio se property) siano Protected
    Pietro

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    codice:
    <%@ Page Language="C#" %>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <script runat="server">
        protected DateTime DataInizio { get; set; }
        protected DateTime DataFine { get; set; }
        
        protected void Page_Load(object sender, EventArgs e)
        {
            string di = Request["DataInizio"];
            if ((string.IsNullOrEmpty(di)))
            {
                DataInizio = DateTime.Today;
            }
            else
            {
                DataInizio = Convert.ToDateTime(di);
            }
    
            string df = Request["DataFine"];
            if ((string.IsNullOrEmpty(df)))
            {
                DataFine = DataInizio.AddDays(7);
            }
            else
            {
                DataFine = Convert.ToDateTime(df);
            }
    
        }
        
    </script>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <input type="text" name="DataInizio" value="<%=DataInizio.ToString()%>"  />
            <input type="text" name="DataFine" value="<%=DataFine.ToString()%>"  />
        
        </div>
        </form>
    </body>
    </html>
    Pietro

  6. #6
    [QUOTE=pietro09;25234895][code]<%@ Page Language="C#" %>

    Grazie, ho letto ora la tua risposta
    ma nel frattempo ho cambiato un paio di cose
    Premesso che mi ero dimenticato il page_load
    ho sistemato il mio codice in questa maniera, ma ho visto che anche il tuo funziona benissimo
    Grazie

    codice:
    <script runat="server">
        
        void Page_Load(object sender, EventArgs e)
            {
                String di = Request["DataInizio"];
                String df = Request["DataFine"];
    
    
                DateTime DataInizio;// = DateTime.Today; 
                DateTime DataFine;// = DateTime.Today; 
        
       
                if ( di == null)
                {
    
    
                    DataInizio = DateTime.Today;
    
    
                }
                else
                {
                    DataInizio = Convert.ToDateTime(di);
                }
    
    
    
    
    
    
                if (df == null)
                {
    
    
                    DataFine = DataInizio.AddDays(7);
    
    
                }
                else
                {
    
    
                   DataFine = Convert.ToDateTime(df);
                }
    
    
                DataInizioForm.Value = DataInizio.ToString("yyyy-MM-dd");
                DataFineForm.Value = DataFine.ToString("yyyy-MM-dd");
        }
        
    </script>
    <!DOCTYPE html>
    
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <title></title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div id="testo">
        <input type="text" name="DataInizio" id="DataInizioForm"  runat="server" value=""  />
            <input type="text" name="DataFine" id="DataFineForm"  runat="server"  value=""  />
        </div>
        </form>
    </body>
    </html>

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.