C
C#7mo ago
Rizell

MediatR - System.Text.Json.JsonException: 'S' is an invalid start of a value.

I have a project with Clean Architecture and MediatR. My API gets the request fine and the command is created with correct data. In this case my tests passes Email = "[email protected]"
var command = new CreateUserCommand(userReq.Email);
var createUserResult = await mediator.Send(command);

My command:
public record CreateUserCommand(string Email) : IRequest<ErrorOr<User>>;

My handler:
public async Task<ErrorOr<User>> Handle(CreateUserCommand command, CancellationToken cancellationToken)
{
var user = await _userRepository.CreateUser(new User(){Email = command.Email});
await _unitOfWork.CommitChangesAsync();
return user;
}

I Register my MediatR like this:
services.AddMediatR(options =>
{
// options.RegisterServicesFromAssemblyContaining(typeof(DependencyInjection));
options.RegisterServicesFromAssembly(typeof(DependencyInjection).Assembly);
});
var command = new CreateUserCommand(userReq.Email);
var createUserResult = await mediator.Send(command);

My command:
public record CreateUserCommand(string Email) : IRequest<ErrorOr<User>>;

My handler:
public async Task<ErrorOr<User>> Handle(CreateUserCommand command, CancellationToken cancellationToken)
{
var user = await _userRepository.CreateUser(new User(){Email = command.Email});
await _unitOfWork.CommitChangesAsync();
return user;
}

I Register my MediatR like this:
services.AddMediatR(options =>
{
// options.RegisterServicesFromAssemblyContaining(typeof(DependencyInjection));
options.RegisterServicesFromAssembly(typeof(DependencyInjection).Assembly);
});
However, my Handler is never invoked. Directly after
mediator.Send(command);
mediator.Send(command);
I get the following error System.Text.Json.JsonException 'S' is an invalid start of a value. Path: $ | LineNumber: 0 | BytePositionInLine: 0. at System.Text.Json.ThrowHelper.ReThrowWithPath(ReadStack& state, JsonReaderException ex) at System.Text.Json.Serialization.JsonConverter`1.ReadCore(Utf8JsonReader& reader, JsonSerializerOptions options, ReadStack& state) Any pointers or ideas what the cause might be?
4 Replies
Rizell
RizellOP7mo ago
Issue is solved. I had just forgotten to implement the : IRequestHandler<CreateUserCommand, ErrorOr<User>> on my Handler class
Unknown User
Unknown User7mo ago
Message Not Public
Sign In & Join Server To View
MODiX
MODiX7mo ago
Use the /close command to mark a forum thread as answered
Unknown User
Unknown User7mo ago
Message Not Public
Sign In & Join Server To View
Want results from more Discord servers?
Add your server