用c#完成使用三层架构实现登录功能
时间: 2024-02-20 21:01:53 浏览: 17
好的,下面是一个使用C#语言实现三层架构的登录功能示例代码:
表示层(Presentation Layer):
```csharp
using System;
namespace LoginDemo
{
public class Program
{
static void Main(string[] args)
{
Console.WriteLine("请输入用户名和密码:");
Console.Write("用户名:");
string username = Console.ReadLine();
Console.Write("密码:");
string password = Console.ReadLine();
UserService userService = new UserService();
bool result = userService.Login(username, password);
if (result)
{
Console.WriteLine("登录成功!");
}
else
{
Console.WriteLine("登录失败!");
}
}
}
}
```
业务逻辑层(Business Logic Layer):
```csharp
using System.Collections.Generic;
namespace LoginDemo
{
public class UserService
{
private readonly UserRepository userRepository = new UserRepository();
public bool Login(string username, string password)
{
User user = userRepository.GetUserByUsername(username);
if (user == null)
{
return false;
}
return user.Password == password;
}
}
}
```
数据访问层(Data Access Layer):
```csharp
using System.Collections.Generic;
namespace LoginDemo
{
public class UserRepository
{
private static readonly List<User> users = new List<User>
{
new User { Username = "admin", Password = "123456" },
new User { Username = "guest", Password = "abcdef" }
};
public User GetUserByUsername(string username)
{
return users.Find(user => user.Username == username);
}
}
}
```
实现思路:
1. 用户在表示层输入用户名和密码。
2. 表示层调用业务逻辑层的登录方法,传递用户名和密码。
3. 业务逻辑层通过数据访问层获取用户信息,判断用户名和密码是否匹配。
4. 如果匹配,则返回登录成功;否则返回登录失败。
这个示例代码是一个简单的登录功能,但是它包含了三层架构的基本思想,可以帮助你更好地理解和掌握三层架构的开发过程。