In Sirverlight non esiste nativamente il modo per ottenere le informazioni sull’utente connesso a Windows. Quello che si può fare é utilizzare del codice ASP lato server e poi recuperare le informazioni da Silverlight.

Nel nostro container ASP che host il controllo Silverlight aggiungiamo qualcosa del tipo:

1
2
3
4
5
6
7
8
9
....
void Page_Load()
{
this.UsernameField.Value = User.Identity.Name;
}
...

Nel body invece mettiamo un controllo nascosto per contenere i nostri dati:

1
2
3
4
5
...
...

Lato Silverlight leggiamo, quando ci occorre, il volore del tag input:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
public string GetUser()
{
HtmlDocument doc = HtmlPage.Document;
if (doc == null)
{
return string.Empty;
}
HtmlElement elm = doc.GetElementById("UserField");
if (elm == null)
{
return string.Empty;
}
return elm.GetAttribute("value");
}