Visualizzazione dei risultati da 1 a 4 su 4

Discussione: #include file

  1. #1

    #include file

    Ciao,
    domanda da superniubbo.

    Mi sono lanciato da poche settimane al codice ASP/ASP.NET + C#.

    Volevo creare una pagina in maniera dinamica: ovvero.

    La mia mainpage ha un indirizzo:
    www.miosito.it/default.aspx

    Visto che parte del layout del sito non cambia col cambiare delle pagine ( header, footer, menu ), pensavo di far disegnare le parti comuni in modo statico, e le parti che cambiano utilizzando la sintassi .

    L'idea principale era questa:

    codice:
    <div id="header">
       IL MIO HEADER
    </div>
    <div id="menu">
      <% WriteMenu(); %>
    </div>
    <div id="content">
    <% WriteContent (); %>
    </div>
    Il codice in WriteContent e' il seguente:
    codice:
    string page = MyPage.Request.QueryString["pg"];
    switch (page)
    {
      case "1":
        MyPage.Response.Write("");
        break;
      case "2":
        MyPageResponse.Write("");
        break;
    }
    Praticamente:
    Se viene passato un
    www.miosito.it/default.aspx?pg=1 vedo la pagina 1
    www.miosito.it/default.aspx?pg=2 vedo la pagina 2

    La cosa strana e' che scrivendo questo codice, all'interno del codice HTML della pagina generata, non ho l'inclusione del file history, piuttosto che album, ma rimane presente il testo esplicito .

    Cioe', aprendo dal browser Visualizza/HTML vedo:

    codice:
    <div id="header">
       IL MIO HEADER
    </div>
    <div id="menu">
      Storia
      Album
    </div>
    <div id="content">
        
    </div>
    Perche' ???


    Ho trovato una soluzione, creando la pagina aspx in questo modo:
    codice:
    <div id="menu">
      <% WriteMenu(); %>
    </div>
    <div id="content">
      <% string page = Request.QueryString["pg"];
      switch (page)
      {
        case "1": %>
          
       <% break; 
       case "2": %>
      
       <% break; %>
       <% } %>
    </div>
    Funziona, ma oltre a essere noioso da scrivere, non lo trovo molto pulito.
    Non ci sarebbe un modo piu' semplice e chiaro per fare il tutto ?
    Mi manca qualche informazione di base ?

    Grazie a chiunque avra' voglia di rispondermi.

    Mauro

  2. #2
    Forse mi rispondo da solo:

    E' corretta come soluzione ?

    codice:
    string page = MyPage.Request.QueryString["pg"];
    
    switch (page)
    {
      case "1":
        MyPage.Server.Execute("history.html"); 
        break;
      case "2":
         MyPage.Server.Execute("album.html"); 
        break;
    }

  3. #3
    Utente di HTML.it L'avatar di Lak3d
    Registrato dal
    Aug 2006
    Messaggi
    1,031
    hai sbagliato area... quella ASP.NET sta più sotto.

  4. #4
    Ooops !!!
    Pensavo che in queste cose ASP e ASP.NET si equivalessero.

    Chiedo al moderatore se gentilmente mi sposta nella sezione corretta.

    Scusate

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.