Files
2026-06-09 22:27:38 +02:00

49 lines
1014 B
C#

using System.ServiceModel;
using ProtoBuf;
using EonaCat.gRPC.Core.Entities;
namespace EonaCat.gRPC.Proto;
public class User
{
}
[ServiceContract]
public interface IProtoUserService
{
[OperationContract]
ValueTask<BaseResponse<string>> Create(UserCreateRequest userCreateRequest);
[OperationContract]
Task<BaseResponse<UserResponse?>> GetByIdAsync(string id);
[OperationContract]
Task<BaseResponse<List<UserResponse>?>> GetAsync();
}
[ProtoContract]
public class UserResponse
{
[ProtoMember(1)]
public string Id { get; set; } = null!;
[ProtoMember(2)]
public string? FirstName { get; set; }
[ProtoMember(3)]
public string? LastName { get; set; }
[ProtoMember(4)]
public string Email { get; set; } = null!;
}
[ProtoContract]
public class UserCreateRequest
{
[ProtoMember(1)]
public string? FirstName { get; set; }
[ProtoMember(2)]
public string? LastName { get; set; }
[ProtoMember(3)]
public string? Email { get; set; }
}