首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从WebContext获取用户信息?

如何从WebContext获取用户信息?
EN

Stack Overflow用户
提问于 2010-07-29 23:59:57
回答 2查看 3.6K关注 0票数 2

我的SL应用使用windowes身份验证。

当应用程序启动时,下面的代码将用户信息添加到colloection:

代码语言:javascript
复制
 public App()
    {
        InitializeComponent();

        // Create a WebContext and add it to the ApplicationLifetimeObjects
        // collection.  This will then be available as WebContext.Current.

        WebContext webContext = new WebContext();
        webContext.Authentication = new WindowsAuthentication() { DomainContext = new AMSRIAServices.Web.AuthenticationContext() };
        this.ApplicationLifetimeObjects.Add(webContext);
    }

然后,在用户控件的任何代码隐藏中,我都想要取回用户信息。我尝试使用WebContext.Current.User,但什么也得不到。如何在代码中从Application.Current.ApplicationLifetimeObjects获取用户信息?

EN

回答 2

Stack Overflow用户

发布于 2010-07-30 01:24:40

典型的模式是在上下文类型中包含一个名为Current的静态属性,然后在StartService方法中分配该属性。

代码语言:javascript
复制
public class MyWebContext : IAppicationService
{

   public MyWebContext Current {get; private set}


   public void StartService(ApplicationServiceContext context)
   {
      Current = this;
      // Other initialisation code
   }
   // Rest of implementation

}

因此,访问webContext对象很简单:

代码语言:javascript
复制
MyWebContext.Current.DoStuff();
票数 0
EN

Stack Overflow用户

发布于 2010-11-11 07:38:57

我认为在Application_Startup中你需要做一个LoadUser:

WebContext.Current.Authentication.LoadUser();

虽然我有一个类似的问题,让用户加载。但我使用的是表单身份验证。如果您创建了一个Silverlight Business Application并查看app.xaml.cs,您可以看到一个如何执行此操作的示例。

让我知道它是否适用于你的windows auth。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3364514

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档