2009-06-09 51 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