|
Как модифицировать код, чтобы решить задачу? (DI, .Net Core)
|
|||
---|---|---|---|
#18+
Есть Nuget пакет провайдер смс. Но редактировать его нежелательно, хоть и есть исходнник. Мое приложение использует этот пакет. Когда пользователь был один, все было хорошо - креденшелы (логин и пароль) были одни для всех юзеров и брались из apppsettings (секция BVBSMSGateOptions). Сейчас условия изменились - теперь у каждого юзера есть свой логин и пароль. И теперь их надо передавать в каждом запросе. Ниже приведу код, который работал с одними кредами на всех пользователей (рабочий метод SendSms , креды в BSMSGateOptions ): SMSProviders package Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60.
MyService Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49.
Вопрос: как мне теперь инитить юзер-кредам каждый запрос? Спасибо за помощь с кусочком кода. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.04.2021, 16:11 |
|
Как модифицировать код, чтобы решить задачу? (DI, .Net Core)
|
|||
---|---|---|---|
#18+
a) передавать их в качестве параметра метод SendSms б) для каждого пользователя создать свою службу в) создавать её при каждой отправке сообщения и потом разрушать ... |
|||
:
Нравится:
Не нравится:
|
|||
07.04.2021, 17:33 |
|
Как модифицировать код, чтобы решить задачу? (DI, .Net Core)
|
|||
---|---|---|---|
#18+
Roman Mejtes a) передавать их в качестве параметра метод SendSms придется редактировать нугет. Roman Mejtes б) для каждого пользователя создать свою службу расточительно Roman Mejtes в) создавать её при каждой отправке сообщения и потом разрушать здесь подробнее можно? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.04.2021, 17:45 |
|
Как модифицировать код, чтобы решить задачу? (DI, .Net Core)
|
|||
---|---|---|---|
#18+
services.AddBVBSMSGate посмотри исходники этого метода ... |
|||
:
Нравится:
Не нравится:
|
|||
07.04.2021, 22:53 |
|
Как модифицировать код, чтобы решить задачу? (DI, .Net Core)
|
|||
---|---|---|---|
#18+
у тебя ж полюбас врапер есть над библой чтоб абстрагировать код от реализации. вот ты там можешь без редактирования нугета и дописать логику прокидывания учетки и отправку уже через нугет библу. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2021, 08:28 |
|
Как модифицировать код, чтобы решить задачу? (DI, .Net Core)
|
|||
---|---|---|---|
#18+
весь код вызова SendSms я привел в ТС. нет там враппера. сходимся на том, что надо просто для каждого вызова подкладывать креды и создавать новый экземпляр. я правильно понимаю, что мне надо тут заменить AddSingleton на AddTransient ? Код: c# 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2021, 11:25 |
|
Как модифицировать код, чтобы решить задачу? (DI, .Net Core)
|
|||
---|---|---|---|
#18+
Roman Mejtes services.AddBVBSMSGate посмотри исходники этого метода вот они Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2021, 11:28 |
|
Как модифицировать код, чтобы решить задачу? (DI, .Net Core)
|
|||
---|---|---|---|
#18+
RegisteredUser, Теперь почитай вот это https://metanit.com/sharp/aspnet5/6.2.php и посмотри на этот метод еще раз, а сделай свой, с блекджеком, логином и паролем ... |
|||
:
Нравится:
Не нравится:
|
|||
08.04.2021, 14:19 |
|
Как модифицировать код, чтобы решить задачу? (DI, .Net Core)
|
|||
---|---|---|---|
#18+
кому интересно, решили так: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 17:55 |
|
|
start [/forum/topic.php?fid=18&fpage=3&tid=1354543]: |
0ms |
get settings: |
10ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
33ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
others: | 251ms |
total: | 382ms |
0 / 0 |