Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 身份验证。登录:AuthenticationService设置为null_Asp.net_Silverlight_Silverlight 4.0_Wcf Ria Services - Fatal编程技术网

Asp.net 身份验证。登录:AuthenticationService设置为null

Asp.net 身份验证。登录:AuthenticationService设置为null,asp.net,silverlight,silverlight-4.0,wcf-ria-services,Asp.net,Silverlight,Silverlight 4.0,Wcf Ria Services,由于以下原因,我精神崩溃: 我想自动登录最近创建的已添加到数据库的用户。 用户数据在创建后会反映在数据库(SQL Server 2008)中 登录代码如下: [EnableClientAccess()] 公共类AuthenticationService:AuthenticationBase { } 公共类用户:UserBase { //应作为用户对象公开的配置文件属性 //用户信息 公共字符串CurrentTheme{get;set;} } 尝试执行此登录指令时,我收到一个错误,该错误位

由于以下原因,我精神崩溃:

我想自动登录最近创建的已添加到数据库的用户。 用户数据在创建后会反映在数据库(SQL Server 2008)中

登录代码如下:



[EnableClientAccess()]
公共类AuthenticationService:AuthenticationBase
{
}
公共类用户:UserBase
{
//应作为用户对象公开的配置文件属性
//用户信息
公共字符串CurrentTheme{get;set;}
}

尝试执行此登录指令时,我收到一个错误,该错误位于此消息的底部


我在web配置文件中插入了以下内容:


身份验证模式=“表单”


System.NullReferenceException:对象引用未设置为对象的实例。 位于System.ServiceModel.DomainServices.Client.ApplicationServices.AuthenticationService.c_DisplayClass1
1.b_u0(TAO)
位于System.ServiceModel.DomainServices.Client.ApplicationServices.LoginOperation.InvokeCompleteAction()处
位于System.ServiceModel.DomainServices.Client.OperationBase.Complete(对象结果)
位于System.ServiceModel.DomainServices.Client.ApplicationServices.AuthenticationOperation.End(IAsyncResult结果)
位于System.ServiceModel.DomainServices.Client.ApplicationServices.AuthenticationOperation.c\u DisplayClass1.b\u 0(对象状态)
位于System.ServiceModel.DomainServices.Client.ApplicationServices.AuthenticationOperation.RunInSynchronizationContext(SendOrPostCallback回调,对象状态)
位于System.ServiceModel.DomainServices.Client.ApplicationServices.AuthenticationOperation.HandleAsyncCompleted(IAsyncResult asyncResult)
位于System.ServiceModel.DomainServices.Client.AsyncResultBase.Complete()处
位于System.ServiceModel.DomainServices.Client.ApplicationServices.WebAuthenticationService.HandleOperationComplete(OperationBase操作)
在System.ServiceModel.DomainServices.Client.LoadOperation.c__DisplayClass4中
1.b_0(LoadOperation
1参数)
在System.ServiceModel.DomainServices.Client.LoadOperation上
位于System.ServiceModel.DomainServices.Client.OperationBase.Complete(对象结果)
位于System.ServiceModel.DomainServices.Client.LoadOperation.Complete(DomainClientResult结果)
位于System.ServiceModel.DomainServices.Client.DomainContext.CompleteLoad(IAsyncResult asyncResult)
在System.ServiceModel.DomainServices.Client.DomainContext.c_DisplayClass1b.b_17(对象)}



请帮助我…

我假设您已使用FormsAuthentication身份验证属性实例化WebContext对象。如果没有,那么预期的错误将类似于NotSupportedException。但为了以防万一,请在App.xaml.cs中添加以下行

        var webContext = new WebContext();
        webContext.Authentication = new FormsAuthentication();
        ApplicationLifetimeObjects.Add(webContext);
[EnableClientAccess()]
public class AuthenticationService : AuthenticationBase<User>
{
}

public class User : UserBase
{
    // Profile properties that should be exposed as the user object
    // User information
    public string CurrentTheme { get; set; }
}
        var webContext = new WebContext();
        webContext.Authentication = new FormsAuthentication();
        ApplicationLifetimeObjects.Add(webContext);