powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
25 сообщений из 177, страница 4 из 8
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785488
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fkthat"Дали дураку хрустальный х...й" (с) Встроили в Core DI из коробки - ждем теперь массовой инжекции клиентского JavaScript в базу данных и тому подобного.
эм будто до кор нет никто не инжектил
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785593
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttНу скажи мне, что ObjectResult.StatusCode и OperationResult.Status суть разные вещи, давай
Разные конечно.
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785596
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
К примеру:
"404 Not Found - The server can not find requested resource. In the browser, this means the URL is not recognized."

Какой на фиг на уровне сервиса "URL is not recognized"? На уровне сервиса NotFound - это уже другое :)
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785657
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий МухК примеру:
"404 Not Found - The server can not find requested resource. In the browser, this means the URL is not recognized."

Какой на фиг на уровне сервиса "URL is not recognized"? На уровне сервиса NotFound - это уже другое :)
а вот тут я не соглашусь. текст про 404 старой версии в которой до сих пор все думают
а вот по новому как звучит
6.5.4. 404 Not Found

The 404 (Not Found) status code indicates that the origin server did
not find a current representation for the target resource or is not
willing to disclose that one exists. A 404 status code does not
indicate whether this lack of representation is temporary or
permanent; the 410 (Gone) status code is preferred over 404 if the
origin server knows, presumably through some configurable means, that
the condition is likely to be permanent.
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785666
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuДмитрий МухК примеру:
"404 Not Found - The server can not find requested resource. In the browser, this means the URL is not recognized."

Какой на фиг на уровне сервиса "URL is not recognized"? На уровне сервиса NotFound - это уже другое :)
а вот тут я не соглашусь. текст про 404 старой версии в которой до сих пор все думают
а вот по новому как звучит
6.5.4. 404 Not Found

The 404 (Not Found) status code indicates that the origin server did
not find a current representation for the target resource or is not
willing to disclose that one exists. A 404 status code does not
indicate whether this lack of representation is temporary or
permanent; the 410 (Gone) status code is preferred over 404 if the
origin server knows, presumably through some configurable means, that
the condition is likely to be permanent.
И с чем же вы не согласны? Что такое "текущее представление целевого ресурса" на уровне бизнес-логики?

- Вась, дай ключ на двадцать!
- Текущее представление целевого ресурса не найдено.

:)
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785677
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дмитрий Мух,

с тем как ты трактуешь код httpcode 404
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785709
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuДмитрий Мух,

с тем как ты трактуешь код httpcode 404
Моя мысль в том, что возврат результата со статусом NotFound из _myService.GetData(parameters) - это никакое не дублирование httpcode 404, как последний не трактуй.
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785721
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAhandmadeFromRuДмитрий Мух,

с тем как ты трактуешь код httpcode 404
Моя мысль в том, что возврат результата со статусом NotFound из _myService.GetData(parameters) - это никакое не дублирование httpcode 404, как последний не трактуй.
а на это я скажу что это велик бесполезный. бл не должен тебе говорить статусы, статус добавляет тебе точка входа в случае реста это контролер. а если точка входа декстопном приложение или фоновый сервис ?
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785727
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuskyANAпропущено...

Моя мысль в том, что возврат результата со статусом NotFound из _myService.GetData(parameters) - это никакое не дублирование httpcode 404, как последний не трактуй.
а на это я скажу что это велик бесполезный. бл не должен тебе говорить статусы, статус добавляет тебе точка входа в случае реста это контролер. а если точка входа декстопном приложение или фоновый сервис ?
А что должна говорить бл?

Вот приходишь ты к туроператору и ищет он тебе по своей базе размещение в отеле в своём десктоп приложении.
И HotelAccomodationService возвращает OperationResult со статусом Success и в качестве Value список подходящих под твой запрос размещений.

Или возвращает OperationResult со статусом NotFound и в качестве Value ничего, так как ничего подходящего под заданные тобой параметры не нашлось.

В чём тут бесполезность?
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785730
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

я же написал что за вывод клиенту отвечает точка входа. что тут не понятного?
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785735
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А ищешь ты к примеру размещение для троих в одноместном номере и бл тебе отвечает NotSupported и Message:
"Чувак, как бы троих в одноместный не запихнуть".
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785737
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuskyANA,

я же написал что за вывод клиенту отвечает точка входа. что тут не понятного?
Ну да, точка входа посмотрит на OperationResult, интерпретирует и отобразит как надо.
Причём интерпретирует NotFound не как "текущее представление целевого ресурса не найдено", а именно "подходящее размещение не найдено, попробуйте изменить параметры поиска".
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785738
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,
бесполезность в том что ты потом будешь все равно транслировать свой статус в статус конкретной точки входа.
зачем? можно вернуть чистую сущность уровня бл в случае успеха ..вернуть null если не нашли ..выкинуть ошибку в случае ошибки бл и это все завернуть в красивую обертку в каждой точке входа по своему, которая как то покажет уже клиенту приложения что произошло
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785749
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuskyANA,
бесполезность в том что ты потом будешь все равно транслировать свой статус в статус конкретной точки входа.
зачем? можно вернуть чистую сущность уровня бл в случае успеха ..вернуть null если не нашли ..выкинуть ошибку в случае ошибки бл и это все завернуть в красивую обертку в каждой точке входа по своему, которая как то покажет уже клиенту приложения что произошло
Ну да, if-ы, try catch-и вместо одной чистой цепочки... Они же так полезны :)

Вот только не пойму, что мешает "завернуть в красивую обертку в каждой точке входа по своему" OperationResult?
Ведь и проще, и короче, и читабельней.
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785762
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

конечно мы напишем оверхед кода потому что так красивее.сарказм. у тебя в любом случаем на примере реста будет на контролере в "красивом методе" будет try чтоб вывалить клиенту 500 с месагом адекватным.
а помимо этого у нас в бл появляется мета объект с полями которые мало относятся к самой логике, а чисто нужны для отображения
или к примеру у тебя по бл ошибка ты делаешь статус ..и потом в коде везде проверяешь если статус ок продолжаем если нет то выходим...в случае выкидывания ошибки бл я сразу верну на точку входа без последующих проверок дальше по коду так как они уже не нужны будут.
так что я бы поспорил где проще
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785785
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuконечно мы напишем оверхед кода потому что так красивее.сарказм.
Дык вообще всю логику в контроллер запихни, выделять какие-то слои, классы проектировать - это же такой оверхед :)

handmadeFromRuу тебя в любом случаем на примере реста будет на контролере в "красивом методе" будет try чтоб вывалить клиенту 500 с месагом адекватным
Не будет.

handmadeFromRuили к примеру у тебя по бл ошибка ты делаешь статус ..и потом в коде везде проверяешь если статус ок продолжаем если нет то выходим...в случае выкидывания ошибки бл я сразу верну на точку входа без последующих проверок дальше по коду так как они уже не нужны будут
О да, логика построенная на исключениях - это же так прекрасно. И ведь никакого оверхеда :)
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785790
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuзачем? можно вернуть чистую сущность уровня бл в случае успеха ..вернуть null если не нашли ..выкинуть ошибку в случае ошибки бл и это все завернуть в красивую обертку в каждой точке входа по своему, которая как то покажет уже клиенту приложения что произошло+1
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785793
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дублируем топик: Исключения или коды возврата.
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785804
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAДык вообще всю логику в контроллер запихни, выделять какие-то слои, классы проектировать - это же такой оверхед :)

такой плохой пример что будто слился.

skyANAhandmadeFromRuу тебя в любом случаем на примере реста будет на контролере в "красивом методе" будет try чтоб вывалить клиенту 500 с месагом адекватным
Не будет.

слабое утверждение без примера к примеру на кор нет или к примеру если у тебя будет фоновая служба. где ж ты там словишь к примеру разрыв соединения с бд без try

skyANAО да, логика построенная на исключениях - это же так прекрасно. И ведь никакого оверхеда :)

и? вот прям из твоих ссылок https://mattwarren.org/2016/12/20/Why-Exceptions-should-be-Exceptional/
кароче скиан не мути воду
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785819
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuskyANAДык вообще всю логику в контроллер запихни, выделять какие-то слои, классы проектировать - это же такой оверхед :)

такой плохой пример что будто слился.

skyANAпропущено...

Не будет.

слабое утверждение без примера к примеру на кор нет или к примеру если у тебя будет фоновая служба. где ж ты там словишь к примеру разрыв соединения с бд без try
Ну вот тебе пример метода контроллера:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
public ActionResult Promote(long id)
{
    var service = new CustomerService();

    return service.GetById(id)
        .OnSuccess(customer => customer.Promote())
        .OnSuccess(customer => service.SendPromotionNotification(customer.Email))
        .OnBoth(result => result.ToActionResult());
}


Много if-ов, try-catch-ей видишь?
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785833
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

так где ответ на мой вопрос по разрыву соединения?
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785835
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuskyANAО да, логика построенная на исключениях - это же так прекрасно. И ведь никакого оверхеда :)

и? вот прям из твоих ссылок https://mattwarren.org/2016/12/20/Why-Exceptions-should-be-Exceptional/
кароче скиан не мути воду
Что и?
Там прямые выводы, что исключения надо кидать редко и желательно действительно в исключительных ситуациях.
Тогда не будет оверхеда по производительности.

Цитирую: Rare or Exceptional exceptions are not hugely expensive.
Перевожу: Редкие или действительно исключительные исключения не очень дороги.
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785841
handmadeFromRu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

Here we can see that as long as you follow the guidance and ‘DO NOT use exceptions for the normal flow of control’ then they are actually not that costly. I mean yes, they’re 15 times slower than using error codes, but we’re only talking about 22 nanoseconds, i.e. 22 billionths of a second, you have to be throwing exceptions frequently for it to be noticeable

да да да ты наверное думаешь я там сру ошибки постоянно и вся работа моего кода это сплошные ошибки )))
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785846
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuskyANA,

так где ответ на мой вопрос по разрыву соединения?
А по коду ( 21827758 ) не ясно?
Код: c#
1.
2.
3.
4.
    /// <summary>
    /// If Success is false and an exception has been caught internally, this field will contain the exception.
    /// </summary>
    public Exception Exception { get; private set; }
...
Рейтинг: 0 / 0
AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
    #39785854
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
handmadeFromRuskyANA,

Here we can see that as long as you follow the guidance and ‘DO NOT use exceptions for the normal flow of control’ then they are actually not that costly. I mean yes, they’re 15 times slower than using error codes, but we’re only talking about 22 nanoseconds, i.e. 22 billionths of a second, you have to be throwing exceptions frequently for it to be noticeable

да да да ты наверное думаешь я там сру ошибки постоянно и вся работа моего кода это сплошные ошибки )))
Я думаю, что ты как и многие кидаешь исключения там, где можно и без них обойтись.
...
Рейтинг: 0 / 0
25 сообщений из 177, страница 4 из 8
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / AspNet Core. Как заинжектить текущий контроллер в класс-сервис ?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]