• User Attivo

    GUIDA : Compatibilità asp in pagine asp.net

    1. E' possibile far processare il mio vecchio codice ASP direttamente dal framework .NET?

    2. Che modifiche devo fare la codice?

    3. Che vantaggi porta?

    4. Si è possibile far processare il vecchio codice ASP in pagine ASP.
      Occorre però impostare la modalità di compatibilità su true nell'header della pagina .aspx:
      Esempio header pagina :
      <%@ Page Language="vb" aspcompat="true" Debug="true" AutoEventWireup="false" Codebehind="page.aspx.vb"%>

    Con la dichiarazione aspcompat="true" comunichiamo al framework :NET che deve mantenere la compatibilità con il vecchio codice ASP.

    Il contenuto della pagina (script in VB) va poi riportato coem si fa in asp, la logica è la stessa ma cambiano alcuen specifiche.

    1. In ASP sotto .NET mancano alcuni costrutti o alcune sintassi specifiche presenti nel vecchio ASP. Vediamo quali e come sistemarle
    • Istruzione set =
      L'istruzione set = non esiste più quindi è da togliere davanti alle allocazione di nuovi oggetti.
      Esempio instanza di un recordset :
      ASP : Set rec = Server.CreateObject("ADODB.Recordset")
      ASP.NET : rec = Server.CreateObject("ADODB.Recordset")

    • Dichiarazione variabili obbigatoria
      E' obbligatorio (dovrebbe essere sempre così) dichiarare le variabili utilizzate

    • Chiamata funzioni all'interno di moduli include
      Anche per le funzioni che non restituiscono nessun valore, è obbligatorio assegare il risultato ad una variabile.
      Esmpio :
      function WriteTesto(TestoScrivere)
      response.write(TestoScrivere)
      end function

    Chiama funzione
    ASP : WriteTesto "Ciao"
    ASP.NET : tmp=WriteTesto("Ciao")

    Altri aggiustamenti li accoderò in seguito, man mano.

    1. Vataggi? Velocità di elaborazione maggiore, perchè il framework di .NET è molto più performante (anche elaborando un codice interpretato)

  • User Attivo

    La funzionate Date(), in linguaggio ASP sotto .NET non è più valida o esistente.

    A tal proposito consiglio la creazione di una funzione specificata che assolve alla restituzione della data :

    function D_Date()
    '-----------------------'per ASP
    D_Date = Date

    '-----------------------'per .NET normale ITALIANA
    D_Date = day(Now) & "/" & month(Now) & "/" & year(now)
    
    '-----------------------'per .NET normale INGLESE
    D_Date = month(Now) & "/" & day(Now) & "/" & year(now)
    

    end function

    Ho riportato le possibili configurazioni sia per l'ASP vecchio, sia per l'ASP sotto .NET per computer con sistema operativo italiano e inglese.

    La stessa problematica persiste per la funzione Time().
    function D_Time()
    '-----------------------'per ASP
    D_Time = Time
    '-----------------------'per .NET normale
    D_Time = Hour(Now) & ":" & Minute(Now) & ":" & Second(Now)
    end function


  • User Attivo

    caro ciodof, io, scusa se ti contraddico, ritengo sia migliore utilizzare
    DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")
    [oppure Format(DateTime.Now, "dd/MM/yyyy HH:mm:ss")]


  • User Attivo

    Non è una contraddizione, ma solo un altro suggerimento o modo di implementare la funzione.

    Il tuo modo di scrivere il codice e di usare le funzione è più vicino a .NET, il mio rimane più vicino a chi è abituato a scrivere in vecchio ASP.