The ASP.NET Core solution (mws.api/mws.application/mws.domain/ mws.infrastructure) existed only as untracked working files. Adding it to version control, plus a .gitignore for build output and local tooling directories, so the CQRS/mediator refactor plan has a real git history to branch and diff against.
34 lines
789 B
C#
34 lines
789 B
C#
namespace Mws.Application.Auth;
|
|
|
|
public class LoginRequest
|
|
{
|
|
public string Username { get; set; } = string.Empty;
|
|
public string Password { get; set; } = string.Empty;
|
|
}
|
|
|
|
public class UserDto
|
|
{
|
|
public Guid Id { get; set; }
|
|
public string Username { get; set; } = string.Empty;
|
|
public string DisplayName { get; set; } = string.Empty;
|
|
public Guid RoleId { get; set; }
|
|
public string RoleName { get; set; } = string.Empty;
|
|
}
|
|
|
|
public class LoginResponse
|
|
{
|
|
public string Token { get; set; } = string.Empty;
|
|
public UserDto User { get; set; } = null!;
|
|
}
|
|
|
|
public interface IPasswordHasher
|
|
{
|
|
string Hash(string password);
|
|
bool Verify(string password, string hash);
|
|
}
|
|
|
|
public interface ITokenService
|
|
{
|
|
string CreateToken(Guid userId, string username);
|
|
}
|