Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
ASP.NET 1.0/1.1
Sessione if
domenica 04 dicembre 2005 - 11.43
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
galassya
Profilo
| Newbie
6
messaggi | Data Invio:
dom 4 dic 2005 - 11:43
non riesco a scrivere il nome utente tramite identificazione di session
come si fa?
prima in asp facevo cosi:
If Session("Collegato") = True Then %> <p> <br>
<%=Replace(Benvenuto, "[userid]", Session("UserID"), 1, -1, 1)%>
ora come si fa questo con c#?
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
dom 4 dic 2005 - 16:27
>non riesco a scrivere il nome utente tramite identificazione
>di session
>come si fa?
>prima in asp facevo cosi:
>If Session("Collegato") = True Then %> <p> xx
>ora come si fa questo con c#?
Eh eh, bisogna studiare un po' di più. Le cose da ASP 3.0 ad ASP.NET sono cambiate totalmente sia a livello architetturale sia a livello di codice e altro ancora. Il sistema di autenticazione di ASP.NET è ben diverso. Ci sono vari tipi di autenticazione Forms Authetnication (la classica), Windows Authentication per reti locali e autenticazione eventuale tramite il servizio Passport di Microsoft.
Ti consiglio la lettura di questo articolo:
http://support.microsoft.com/?id=301240
ciao
David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/
galassya
Profilo
| Newbie
6
messaggi | Data Invio:
dom 4 dic 2005 - 16:44
Non riesco ad avere lo stesso risultato
nel senso che nelle righe qua sotto che sono tratte da una pagina non mi
danno errori:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Net;
using System.IO;
using System.Text;
namespace Commerce
{
public class CDefault : Master
{
protected System.Web.UI.HtmlControls.HtmlForm Form1;
protected System.Web.UI.WebControls.Label CustomerName;
private void Page_Load(object sender, System.EventArgs e)
{
if (!IsPostBack)
{
if (User.Identity.IsAuthenticated)
{
Commerce.CustomersDB accountSystem = new Commerce.CustomersDB();
Commerce.CustomerDetails customerDetails =
accountSystem.GetCustomerDetails(User.Identity.Name.Substring(0,User.Identity.Name.IndexOf(":")));
CustomerName.Text = customerDetails.FullName;
}
}
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: questa chiamata è richiesta da Progettazione Web Form ASP.NET.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Metodo necessario per il supporto della finestra di progettazione. Non
modificare
/// il contenuto del metodo con l'editor di codice.
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
Nella pagina aspx scrivo : <asp:label id="CustomerName" runat="server">
</asp:label> E QUA VEDO IL RISULTATO VOLUTO
Mentre in un'altra pagina volevo quasi lo stesso effetto ma con le righe qua
sotto ma è un casino...
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Net;
using System.IO;
using System.Text;
using System.Web.Security;
namespace Commerce{
public abstract class C_MenuLogin : System.Web.UI.UserControl {
protected System.Web.UI.WebControls.TextBox email;
protected System.Web.UI.WebControls.TextBox password;
protected System.Web.UI.WebControls.CheckBox RememberLogin;
protected System.Web.UI.WebControls.ImageButton LoginBtn;
protected System.Web.UI.WebControls.RequiredFieldValidator emailRequired;
protected System.Web.UI.WebControls.RegularExpressionValidator emailValid;
protected System.Web.UI.WebControls.RequiredFieldValidator passwordRequired;
protected System.Web.UI.WebControls.Label Message;
protected System.Web.UI.HtmlControls.HtmlForm Form1;
protected System.Web.UI.WebControls.Label CustomerName;
public C_MenuLogin() {
this.Init += new System.EventHandler(Page_Init);
}
private void Page_Load(object sender, System.EventArgs e)
{
if (User.Identity.IsAuthenticated)
{
Commerce.CustomersDB accountSystem = new Commerce.CustomersDB();
Commerce.CustomerDetails customerDetails =
accountSystem.GetCustomerDetails(User.Identity.Name.Substring(0,User.Identity.Name.IndexOf(":")));
CustomerName.Text = customerDetails.FullName;
}
}
#region Web Form Designer generated code
private void Page_Init(object sender, EventArgs e) {
InitializeComponent();
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
praticamente mi da errore parser
allora... l'effetto che io volevo era...
se non sono autenticato mostrami la form di accesso
se sono autentificato mostrami CustomerName
lo so lo so chiedo troppo
ma sono alle prime armi con asp.net c# e ci sto studiando sopra...
dove sta l'errore??
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
dom 4 dic 2005 - 19:02
>allora... l'effetto che io volevo era...
>se non sono autenticato mostrami la form di accesso
>se sono autentificato mostrami CustomerName
E' molto difficile capire il significato delle classi che utilizzi all'interno del tuo codice che non sono del .NET Framework. Premettendo che l'autenticazione è funzionante per raggiungere ciò che ti serve è sufficiente nel page load inserire qualcosa del tipo:
if (Context.User.Identity.IsAuthenticated)
{LabelPane.Visible=true;
LoginPane.Visible=false;
}
else
{LabelPane.Visible=false;
LoginPane.Visible=true;
}
Nel file .aspx devono esserci gli oggetti corrispettivi esempio:
<asp:PlaceHolder runat="server" ID="LabelPane">
</asp:PlaceHolder>
<asp:PlaceHolder runat="server" ID="LoginPane">
</asp:PlaceHolder>
dentro ad essi nel primo metti una Label normale che poi riempi con il nome e nel secondo i controlli di login, textbox, pulsante, ecc.
ciao
David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !