不带SQL的登录数据库C#

不带SQL的登录数据库C#,c#,visual-studio,C#,Visual Studio,所以我在VisualStudioC中做一个个人项目# 一般来说,我对C#和编码非常陌生。我创建了一个登录面板,我想要一种无需数据库服务器即可存储数据的方法,更像是一个文本文件 它将存储如图所示 -------------------- Profiles [Username] [Password] Admin 123abc Test imboss -------------------- 毕竟,它有一个检查方法,看看是否 usernameTextBox和pa

所以我在VisualStudioC中做一个个人项目#

一般来说,我对C#和编码非常陌生。我创建了一个登录面板,我想要一种无需数据库服务器即可存储数据的方法,更像是一个文本文件

它将存储如图所示

--------------------
      Profiles
[Username] [Password]
Admin       123abc
Test        imboss
--------------------
毕竟,它有一个检查方法,看看是否 usernameTextBox和passwordTextBox等同于任何配置文件

private void loginButton_Click(object sender, EventArgs e)
{
    string username, password;
    username = textBox1.Text;
    password = textBox2.Text;


    if ("userProfileName".ToString() == username && "userPassword".ToString() == password)
    {
        //login
    }
    else
    {
        MessageBox.Show("You have entered a wrong user name or password!");
    }
}

一种简单的方法是将用户名和密码存储在app.config文件中

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
    </startup>
  <appSettings>
    <add key="Admin" value="123abc"/>
    <add key="Test" value="imboss"/>
  </appSettings>
</configuration>

我想知道如何制作一个小表来存储值(用户名和密码),以及如何检查输入的用户名和密码是否等于表中的任何密码。如果不使用SQL,您最好使用JSON之类的结构化文本,并使用对象进行序列化/反序列化。是否有一种方法可以将信息存储到c#代码中,例如示例表{[0]=“User”、“password”、[1]=“admin”、“123abc”}您不应该存储密码,而应该存储密码的散列。他们还应该有一个独特的salt——这意味着它是否与另一个用户的密码相同并不重要。另外,您不需要
ToString()
已经是字符串的东西。请查看
SqlLite
RavenDb
或搜索no-sql,以找到一种在没有sql Server的情况下存储数据的好方法。进行调查和分析。谢谢,这正是我要找的@Biologic通过单击答案左上角的绿色复选标记来感谢他人。
        var userPassword = ConfigurationManager.AppSettings[username];

        if (userPassword == password)
        {
            MessageBox.Show("Welcome");
        } else {
            MessageBox.Show("You have entered a wrong user name or password!");
        }