salve, io ho risolto, cosi, faccendo leggere una query users e rileva l'id dell'utente.
Io uso cosi, perchè ho anche i ruoli :
string nome = User.Identity.Name;
nome = nome.Substring(0, nome.IndexOf(":"));
codice:
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using MySql.Data.MySqlClient;
using System.Configuration;
public partial class test : System.Web.UI.Page
{
String connectionString = ConfigurationManager.ConnectionStrings["Personal"].ConnectionString;
protected void Page_Load(object sender, EventArgs e)
{
if (User.Identity.IsAuthenticated)
{
string nome = User.Identity.Name;
nome = nome.Substring(0, nome.IndexOf(":"));
Label1.Text = GetUserID("" + nome + "");
}
else
{
}
}
private string GetUserID(string Username)
{
string result = "";
using (MySqlConnection conn = new MySqlConnection(connectionString))
{
string SQL = "";
SQL = SQL + "SELECT * FROM users WHERE Username=@S_USERNAME";
conn.Open();
MySqlCommand cmd = new MySqlCommand(SQL, conn);
cmd.Parameters.AddWithValue("@S_USERNAME", Username);
MySqlDataReader rdr = cmd.ExecuteReader();
if (rdr.Read())
{
result = "" + rdr["ID"] + "";
}
}
return result;
}
}