我是silverlight的新手,正在研究mvc中托管的silverlight应用程序。用户将登录aspx页面 / LogOn ,并将被重定向到silverlight应用程序或其他视图。要在silverlight中访问已登录的用户,请在mvc。
中添加身份验证服务app.xaml.cs基于Enable authentication in RIA services
进行了修改 public App()
{
this.Startup += this.Application_Startup;
this.Exit += this.Application_Exit;
this.UnhandledException += this.Application_UnhandledException;
InitializeComponent();
WebContext webcontext = new WebContext
{
Authentication = new FormsAuthentication()
};
this.ApplicationLifetimeObjects.Add(webcontext);
WebContext.Current.Authentication.LoadUser().Completed +=
(s, e) => MessageBox.Show(WebContext.Current.User.Name);
}
此方法无效,因为消息框显示为空
答案 0 :(得分:1)
您可以使用该属性创建WCF服务:
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
这将允许访问用户身份中当前隐藏的内容。
if(HttpContext.Current.User.Identity.IsAuthenticated)
{
return HttpContext.Current.User.Identity.Name;
}
else
{
return null;
}