2016-11-10 133 views
1

我有一個在WPF中開發的應用程序。我想添加將是系統特定的登錄頁面。多用戶可以使用應用程序在機器中註冊。我想知道最好的辦法,本地數據庫存儲憑據或服務,將驗證憑據。如果是本地數據庫,請建議適當的一個很小,安全且兼容.net應用程序。如何存儲WPF應用程序的登錄信息

回答

1

這實際上取決於你想如何設置或實現它。

我實際上使用Microsoft SQL Server Management DB來實現這一點。您可以在您的WPF應用程序中使用System.Data.SqlClient類來存儲和檢索數據庫中的用戶登錄信息。我會做這在下面的步驟:

  • 第1步:製作一個DB在Microsoft SQL Server管理
  • 步驟2:用自己的數據類型以及 不同的數據字段創建一個表來存儲用戶的登錄憑據,根據您希望用戶驗證的憑據,它將會變化 。
  • 步驟3:創建一個登錄頁面,按您的要求
  • 第4步:在您的登錄頁面 使用System.Data.SqlClient的類選項能夠連接,檢索或保存用戶登錄的數據
    憑據DB。
  • 步驟5:在DB中保存用戶證書時,使用Microsoft自己的 Hash安全類或Encryption類將數據保存在數據庫中(而不將原始密碼保存在數據庫表中)。
  • 步驟6:使用SQLClient從數據庫檢索散列/加密憑證後,使用相同的加密類來驗證憑證 。

這是在WPF應用程序中構建用戶登錄憑證頁的一般步驟或邏輯,但這可能會根據您的軟件要求或您希望如何實現它而有所不同。

0

您可以使用SQLite作爲項目的本地數據庫。所有數據都存儲在硬盤上的一個文件中。您可以通過NuGet軟件包管理器安裝SQLite

0

而不是數據庫,有一個簡單的解決方案。您可以將數據存儲在User.cfg中。操作步驟如下:

步驟1:在應用程序的資源字典中添加一個條目。

<Application x:Class=」SampleApp.App」 
    xmlns=」http://schemas.microsoft.com/winfx/2006/xaml/presentation」 
    xmlns:x=」http://schemas.microsoft.com/winfx/2006/xaml」 
    xmlns:properties=」clr-namespace:SampleApp.Properties」 
    Exit=」OnExit」 
    StartupUri=」MainWindow.xaml」> 
    <Application.Resources> 
     <properties:Settings x:Key=」Settings」 /> 
    </Application.Resources> 
</Application> 

第2步:使用該設置。

<TextBox Text=」{Binding Source={StaticResource Settings}, Path=Default.Username}」 /> 

第3步:保存設置。

private void OnExit(object sender, ExitEventArgs e) 
{ 
    Properties.Settings.Default.Save(); 
} 

訪問設置:

Properties.Settings.Default[「Username」]

欲瞭解更多信息,請按照此link

相關問題