2015-10-16 4 views
0

Я делаю консольное приложение C# и хотел бы добавить систему входа.Как подключить консоль C# к базе данных?

У меня этот код уже:

Start: 
     Console.Clear(); 
     Console.ForegroundColor = ConsoleColor.Cyan; 

     Console.WriteLine("Enter Username."); 
     string strUsername = Console.ReadLine(); 
     string strTUsername = "Test"; 

     if (strUsername == strTUsername) 
     { 
      Console.Clear(); 
      Console.WriteLine("Enter Password"); 
      Console.ForegroundColor = ConsoleColor.Gray; 
      string strPassword = Console.ReadLine(); 
      string strTPassword = "Test"; 
      if (strPassword == strTPassword) 
      { 
       Console.Write("Logging in."); 
       Thread.Sleep(1000); 
      } 

      else 
      { 
       Console.ForegroundColor = ConsoleColor.Red; 
       Console.WriteLine("The password you entered is wrong."); 
       Thread.Sleep(2000); 
       goto Start; 
      } 
     } 

     else 
     { 
      Console.ForegroundColor = ConsoleColor.Red; 
      Console.WriteLine("The username you entered is wrong."); 
      Thread.Sleep(2000); 
      goto Start; 
     } 

Я хотел бы сделать это позволит несколько имя пользователя и пароль, которые вы можете ввести, что будет работать.

Пока он просто принимает имя пользователя и пароль «Тест», но я хотел бы связать его с другим файлом, заполненным именем пользователя и паролями, которые я могу использовать, а не просто «Тест».

Любая помощь, которую вы можете дать мне или предоставить, полезна!

+0

Что бы ни случилось, если я могу ввести несколько имен пользователей и пароли для разных профилей, то это будет работать для меня. – Drips

+0

Вы собираетесь распят за использование 'goto'. –

+0

Что еще я могу использовать? lol – Drips

ответ

2

У вас есть два способа сделать это:

1: Database to store username and password 
2: Save the username and password in file in a uniform format(like comma,tab separated) 

1: База данных

->Select a database to use 
->create a table with columns such as username and password 
->connect to database from your app 
->get username from console and compare it with the rows of database and check if the password given is correct. 

2: Файл

->Save a file with username and password with a certain format(comma,space or tab separated) 
->Import those from the file to a Dictionay<users>. 
->compare the entered password and user name with the dictionary items. 

Вы можете использовать шифрование, чтобы сделать файла или базы данных.

static void Main(string[] args) 
     { 
      List<User> usersList = new List<User>(); 
      string[] lines = System.IO.File.ReadAllLines("users.txt"); 
      foreach (var line in lines) 
      { 
       User user = new User(); 
       user.user = line.Split(' ')[0]; 
       user.password = line.Split(' ')[1]; 
       usersList.Add(user); 
      } 
      foreach (var item in usersList) 
      { 
       Console.WriteLine(item.user); 
       Console.WriteLine(item.password); 
      } 
      Console.ReadLine(); 
     } 



} 
public class User 
{ 
    public string user { get; set; } 
    public string password { get; set; } 
} 

В этом я добавил простой код, чтобы прочитать файл с разделяемым пробелом и использовать его согласно вашему требованию. Для более безопасного способа вы можете активировать файл. Спасибо

+0

Что я могу использовать для создания базы данных? Как подключить консоль к базе данных? – Drips

+0

какую базу данных вы хотите использовать? –

+0

@soumyasambitKunda Все, что я могу использовать, будет работать, каковы мои варианты? – Drips