2009-06-09 49 views
2

我使用Silverlight商业应用程序(应用程序与RIA服务)。创建新项目。所有设置都是默认的。编译并运行它。在应用程序中,我创建新用户。没关系。 后来我一个chackbox添加到LoginWindow.xaml:如何让用户在会话之间坚持?

<CheckBox x:Name="isPersistent" Content="Remember me"/> 

和修改LoginButton_Click方法。

private void LoginButton_Click(object sender, RoutedEventArgs e) 
    { 
     SetEditableState(false); 
     var parameters = new LoginParameters(loginUserNameBox.Text, 
              loginPasswordBox.Password, 
              (bool)isPersistent.IsChecked); 
     UserService.Current.Login(parameters); 
    } 

但是,当我登录和chek“记住我”复选框 - 用户不会持续在会话之间。

我在做什么错了?我如何让用户在会话之间坚持?

+0

您可以发布您的表单身份验证设置吗? – 2009-06-09 14:21:20

+0

我没有定制任何设置。所有设置默认。 – FFire 2009-06-09 17:04:18

回答

0

解决方案很简单: 默认情况下Silverlight业务应用程序与ASP生成的.aspx:Silverlight控件insted的RIA:SilverlightApplication。

所以,我加入的.aspx:

<%@ Register Assembly="System.Web.Ria" 
Namespace="System.Web.Ria" TagPrefix="ria" %> 

和替换ASP:由

<ria:SilverlightApplication ID="Silverlight1" runat="server" 
Source="~/ClientBin/BusinessApplication1.xap" MinimumVersion="3.0.40305.0" 
Width="100%" Height="100%" /> 

它的工作原理Silverlight控件!

2

对于Silverlight而言,不太确定,但是,在ASP.NET中,您只需设置Cookie的到期日,具体取决于您希望记住用户的天数。

James。

+0

哦!这个选项的名字是什么?我会试试看。 – FFire 2009-06-09 12:08:53

+0

这应该会帮助你。 http://msdn.microsoft.com/en-us/library/ms178194.aspx – James 2009-06-10 11:41:23