В теге объекта на странице хоста Silverlight aspx:
<param name="initParams" value="myvar=<%=Session["myvar"] %>" />
затем получите значение в app.xaml.cs
private void Application_Startup(object sender, StartupEventArgs e)
{
this.RootVisual = new Page();
myvar = e.InitParams["myvar"];
}
Не самый безопасный способ и, как было отмечено, лучше всего работает только с неизменяемыми переменными сеанса.
Другой способ, который уже был предложен, - выставить переменную сеанса с помощью службы WCF. Все зависит от того, как вы хотите получить значение, насколько безопасным вы хотите, чтобы процесс был, каким из нескольких способов вы хотите получить доступ к значению и откуда (на веб-странице или в приложении Silverlight). Я надеюсь, что в этом есть смысл.