Ошибка сервера 500, когда имя класса Dto существует в двух отдельных папках DtoModelsC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Ошибка сервера 500, когда имя класса Dto существует в двух отдельных папках DtoModels

Сообщение Anonymous »

У меня странная ошибка. Я тестирую приложение WebApi C#. Структура контроллеров следующая:

Код: Выделить всё

-US(FOLDER)->UsersController.cs

-EU(FOLDER)->UsersController.cs
Затем у меня есть папка DtoModels для обоих отдельных регионов. Например:
DtoModels:

Код: Выделить всё

   -US(FOLDER) -> Users(FOLDER) -> UserDto.cs

-EU(FOLDER) -> Users(FOLDER) -> UserDto.cs
Тогда у меня есть простая конечная точка в обоих контроллерах, например:

Код: Выделить всё

[HttpPost("AddUser")]
public async Task AddUser(UserDto data)
{
try
{
if (data is not null)
{
await _usersService.CreateUser(new Models.EU.User() { Name = data.Name, Email = data.Email });

return Ok();
}
else
{
return BadRequest();
}
}catch (Exception ex)
{
Console.WriteLine(ex.Message);

return BadRequest();
}
}
Я включаю пространство имен для каждого контроллера.

Код: Выделить всё

Controllers->US->UsersController.cs
using WebApplication1.DtoModels.US.Users;

Controllers->EU->UsersController.cs
using WebApplication1.DtoModels.EU.Users;
Даже пространство имен четко задано, мое приложение дает сбой, а точнее, выдает ошибку 500.
Однако, если я использую пространство имен Контролеру из США в ЕС нравится:

Код: Выделить всё

using WebApplication1.DtoModels.US.Users;
Тогда приложение работает, что как-то странно. Я попытался напрямую включить пространство имен как:

Код: Выделить всё

  public async Task AddUser(DtoModels.EU.Users.UserDto data)
но это не помогло.
Примечание: я бы хотел разделить эти dto.
Любой намек, как я могу это решить?


Подробнее здесь: https://stackoverflow.com/questions/790 ... ls-folders
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»