Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    170

    codebehind: vb si, c# no...

    ciao ragazzi, sto uscendo pazzo. vi posto un paio di esempi che ho scaricato da un sito serio.
    realizzano entrambi la stessa cosa; utilizzano entrambi la programmazione codebehind solo che un (il VB) funziona, l'altro no (in c#)
    ##################VB####################
    <%@ page language="VB" debug="true" src="vbCb.vb"
    inherits="myVbCodeBehind.vbCb" %>
    <html><head></head><body>
    <form runat="server">
    Select a flower, and click the submit button please:

    <asp:ListBox id="lstFlowers" runat="server" rows="3">
    </asp:ListBox>


    <asp:Button id="btnSubmit" runat="server"
    text="Submit" onclick="showSelection" />


    <asp:Label id=lblMessage runat="server" />
    </body></form></html>

    Option Strict Off
    Imports System
    Imports System.Web.UI.WebControls
    Namespace myVbCodeBehind
    Public Class vbCb : Inherits System.Web.UI.Page
    Public lstFlowers As System.Web.UI.WebControls.ListBox
    Public lblMessage As System.Web.UI.WebControls.Label
    Public btnSubmit As System.Web.UI.WebControls.Button
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
    If Not IsPostBack Then
    lblMessage.Text = "No Selection Yet"
    lstFlowers.Items.Add(new ListItem("Tulip"))
    lstFlowers.Items.Add(new ListItem("Rose"))
    lstFlowers.Items.Add(new ListItem("Redbud"))
    lstFlowers.SelectedIndex=0
    End If
    End Sub
    Protected Sub showSelection(ByVal obj As Object, ByVal e As EventArgs)
    lblMessage.Text = "You have selected " + lstFlowers.SelectedItem.Text
    End Sub
    End Class
    End Namespace
    #########################################

    @@@@@@@@@@@@@@@@CS@@@@@@@@@@@@@@@@@
    <%@ page language="cs" Debug="true" codebehind="CSharpCodeBehind.cs"
    inherits="myCsCodeBehind.cSharpCb" %>
    <html><head></head><body>
    <form runat="server">
    Select a flower, and click the submit button please:

    <asp:ListBox id="lstFlowers" runat="server" rows="3">
    </asp:ListBox>


    <asp:Button id="btnSubmit" runat="server"
    text="Submit" onclick="showSelection" />


    <asp:Label id=lblMessage runat="server" />

    namespace myCsCodeBehind
    { using System;
    using System.Web.UI.WebControls;
    public class cSharpCb : System.Web.UI.Page
    { public System.Web.UI.WebControls.ListBox lstFlowers;
    public System.Web.UI.WebControls.Label lblMessage;
    public System.Web.UI.WebControls.Button btnSubmit;
    protected void Page_Load(object sender, EventArgs e)
    { if (!IsPostBack)
    { lblMessage.Text = "No Selection Yet";
    lstFlowers.Items.Add(new ListItem("Tulip"));
    lstFlowers.Items.Add(new ListItem("Redbud"));
    lstFlowers.Items.Add(new ListItem("Poppy"));
    }
    }
    protected void showSelection(object obj, EventArgs e)
    { lblMessage.Text = "You have selected " + lstFlowers.SelectedItem.Text;
    }
    }
    }
    </body></form></html>

  2. #2
    Hai provato a mettere language="c#"
    al posto di quel al quanto strano per me language="cs" ?
    anche se a me funziona pure così.

    E poi vorrari dire così :

    CSharpCodeBehind.cs :
    codice:
    namespace myCsCodeBehind
     {
      using System;
      using System.Web.UI.WebControls;
      public class cSharpCb : System.Web.UI.Page
       { 
    	public System.Web.UI.WebControls.ListBox lstFlowers;
    	public System.Web.UI.WebControls.Label lblMessage;
    	public System.Web.UI.WebControls.Button btnSubmit;
    	protected void Page_Load(object sender, EventArgs e)
    	 { 
    	  if (!IsPostBack)
    	   {
    		lblMessage.Text = "No Selection Yet";
    		lstFlowers.Items.Add(new ListItem("Tulip"));
    		lstFlowers.Items.Add(new ListItem("Redbud"));
    		lstFlowers.Items.Add(new ListItem("Poppy"));
    	   }
    	 }
    	protected void showSelection(object obj, EventArgs e)
    	 {
    	  lblMessage.Text = "You have selected " + lstFlowers.SelectedItem.Text;
    	 }
       }
     }
    test.aspx :
    codice:
    <%@ page language="c#" Debug="true" codebehind="CSharpCodeBehind.cs"
     inherits="myCsCodeBehind.cSharpCb" %>
    
    <html>
     <head>
     </head>
     <body>
      <form runat="server">
      Select a flower, and click the submit button please: 
    
       <asp:ListBox id="lstFlowers" runat="server" rows="3"></asp:ListBox>
       
    
       
    
       <asp:Button id="btnSubmit" runat="server" text="Submit" onclick="showSelection" />
       
    
       
    
       <asp:Label id=lblMessage runat="server" />
      </form>
     </body>
    </html>
    Compila il file CSharpCodeBehind.cs così :
    codice:
     csc /t:library CSharpCodeBehind.cs
    sposta la dll nella cartella "bin"

    e poi prova ad aprire nel browser la pagina di test
    vedrai che funziona come si deve

    Richard B. Riddick : "Non avrete mica paura del buio?"

    Scusatemi ma sono mesi che non pago piu' la bolletta della luce....

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    170
    ciao
    grazie per la risposta ma c'è un problema, ma non funziona lo stesso...
    ti elenco brevemente configurazione e strumenti
    1)Microsoft.NET SDK versione 1.1
    2)C# Builder o anche SharpDevelop
    3)eseguo le prove in locale...
    4)...ed ecco il messaggio di errore: Could not load type 'myCsCodeBehind.cSharpCb'
    dove sbaglio?

  4. #4
    Originariamente inviato da diego2000
    ciao
    grazie per la risposta ma c'è un problema, ma non funziona lo stesso...
    ti elenco brevemente configurazione e strumenti
    1)Microsoft.NET SDK versione 1.1
    2)C# Builder o anche SharpDevelop
    3)eseguo le prove in locale...
    4)...ed ecco il messaggio di errore: Could not load type 'myCsCodeBehind.cSharpCb'
    dove sbaglio?
    1) ok
    2) per questo file di esempio non ti servono a un tubo...
    vai nel prompt dei comandi e prova ad eseguire le mie istruzioni se non
    ti trova il comando csc allora vuol dire che non si trova nel PATH dei
    comandi quindi, sfoglia la cartella di "?:Windows" cercando la cartella
    "Microsoft.Net" dentro ci sarà "FrameWork" e una o più cartelle
    con una "v" davanti

    es.
    C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705
    C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322
    C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727
    queste indicano la versione del .Net quindi se hai la 1.1
    il comando completo diverterà ?
    Semplice :

    codice:
    C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\csc /t:library CSharpCodeBehind.cs
    chiaro?

    3) dove volevi testarle sennò????
    4) hai fatto copia ed incolla??? controlla che ci sia tutto
    e ripeto fai il test con i comandi che ti ho descritto e
    copia la ".dll" nella cartella "BIN" nella root del sito web

    es. C:\Inetpub\wwwroot\bin

    se non esiste creala.

    i file del test usali sempre da lì (C:\Inetpub\wwwroot\)
    scrivi http://localhost/test.aspx nel browser e prova.

    Fammi sapere.



    Richard B. Riddick : "Non avrete mica paura del buio?"

    Scusatemi ma sono mesi che non pago piu' la bolletta della luce....

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2003
    Messaggi
    170
    cASPita, ora si che va
    Grazie...avevo eseguito tutte le tue istruzioni, tranne una...la cartella bin....
    grazie assai

  6. #6
    Richard B. Riddick : "Non avrete mica paura del buio?"

    Scusatemi ma sono mesi che non pago piu' la bolletta della luce....

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.