Size: a a a

2020 December 18

IC

Ilya Chernoudov in pro.net
этим занимается сама фабрика, когда ссылки протухнут
источник

A

Anatoly in pro.net
Ilya Chernoudov
вообще да, поэтому нельзя просто взять и в синглтон заинжектить typed client
Ну в целом это же очевидно
источник

LU

Lars Ulrich in pro.net
Alex Bespalov
Ваще это всегда странно - инжектить в то что имеет больший лайфтайм что то с меньшим. Типа в синглтон положили транзиент.
согласен. ажура материлась на tcp connections exhausion. гугл привел к фабрике, быстро заколхозили и в продакшен, одно колено вылечили, а второе отстрелили, так и живем
источник

IC

Ilya Chernoudov in pro.net
Anatoly
Ну в целом это же очевидно
Ну вот кто то очень захотел и смог😁
источник

АШ

Александр Шушанидзе... in pro.net
Всем привет. У меня чувство, что я прихожу в этот чатик каждый раз со странными вопросами, но интересно было бы услышать мнения)
У нас в приложении, на олдовом аспнете, очень много ключей конфигурации, так ещё они и "билдятся" обогащая веб конфиг из трансформ файла + проект-независимого файла. Короче говоря, все это счастье происходит при билде и это очень неудобно. Хотелось бы несколько вещей:
+ Апдейт ключей хотя бы при рестарте
+ ключи хочется хранить как файл в гите (хранить историю, в идеале пуллреквесты) + все также собирать этот файл из нескольких источников (например общий файл для всех тестов  + энв-специфик файлы)

Как я понимаю, чтобы это сделать, я могу сделать конфигурацию как в аспнеткоре (можно ли ее инъектнуть в фреймворк я не проверял, но не думаю что там сложно повторить), сделать приватный репозиторий в гитхабе, юзать git crypt, ну и сделать, не знаю, микросервис который будет это все отдавать в приложение)
Звучит забавно, но есть ли что-нибудь похожее, но готовое?
Всякие кейволты в ажуре это не удобно т.к. там и ключи неудобно смотреть, да и пуллреквестов не сделаешь.
Кто-нибудь таким занимался?)
источник

DP

Denis Petukhov in pro.net
Александр Шушанидзе
Всем привет. У меня чувство, что я прихожу в этот чатик каждый раз со странными вопросами, но интересно было бы услышать мнения)
У нас в приложении, на олдовом аспнете, очень много ключей конфигурации, так ещё они и "билдятся" обогащая веб конфиг из трансформ файла + проект-независимого файла. Короче говоря, все это счастье происходит при билде и это очень неудобно. Хотелось бы несколько вещей:
+ Апдейт ключей хотя бы при рестарте
+ ключи хочется хранить как файл в гите (хранить историю, в идеале пуллреквесты) + все также собирать этот файл из нескольких источников (например общий файл для всех тестов  + энв-специфик файлы)

Как я понимаю, чтобы это сделать, я могу сделать конфигурацию как в аспнеткоре (можно ли ее инъектнуть в фреймворк я не проверял, но не думаю что там сложно повторить), сделать приватный репозиторий в гитхабе, юзать git crypt, ну и сделать, не знаю, микросервис который будет это все отдавать в приложение)
Звучит забавно, но есть ли что-нибудь похожее, но готовое?
Всякие кейволты в ажуре это не удобно т.к. там и ключи неудобно смотреть, да и пуллреквестов не сделаешь.
Кто-нибудь таким занимался?)
Аспнеткорную можно использовать
источник

АШ

Александр Шушанидзе... in pro.net
Denis Petukhov
Аспнеткорную можно использовать
Это облегчает задачу, но это не самая большая проблема)
источник

DP

Denis Petukhov in pro.net
Александр Шушанидзе
Это облегчает задачу, но это не самая большая проблема)
У тебя стена текста
источник

DP

Denis Petukhov in pro.net
Проблема какая конкретно?
источник

DP

Denis Petukhov in pro.net
Юзать гит репозиторий как хранилище настроек?
источник

АШ

Александр Шушанидзе... in pro.net
Denis Petukhov
Юзать гит репозиторий как хранилище настроек?
Это решение которое мне пришло. Проблема - много конфигурации и секретов и хочется отслеживать историю изменений, удобно редактировать и обновлять рестартом аппа/ в реалтайме
источник

DP

Denis Petukhov in pro.net
Это решение
источник

DP

Denis Petukhov in pro.net
Проблема то какая?
источник

АШ

Александр Шушанидзе... in pro.net
Denis Petukhov
Проблема то какая?
Я даже и не знаю как это сформулировать по другому, неудобно пользоваться конфигурацией потому что надо ребилдить)
источник

DP

Denis Petukhov in pro.net
Тогда юзай неткорную конфигурацию или чтонить мути со старой
источник

A

Alex in pro.net
Покупаем сертификат для подписывания программы для Windows). Предлагает выбрать CSP. Подскажите, плз, какой выбирать?
источник

D

Dzmitry in pro.net
Александр Шушанидзе
Всем привет. У меня чувство, что я прихожу в этот чатик каждый раз со странными вопросами, но интересно было бы услышать мнения)
У нас в приложении, на олдовом аспнете, очень много ключей конфигурации, так ещё они и "билдятся" обогащая веб конфиг из трансформ файла + проект-независимого файла. Короче говоря, все это счастье происходит при билде и это очень неудобно. Хотелось бы несколько вещей:
+ Апдейт ключей хотя бы при рестарте
+ ключи хочется хранить как файл в гите (хранить историю, в идеале пуллреквесты) + все также собирать этот файл из нескольких источников (например общий файл для всех тестов  + энв-специфик файлы)

Как я понимаю, чтобы это сделать, я могу сделать конфигурацию как в аспнеткоре (можно ли ее инъектнуть в фреймворк я не проверял, но не думаю что там сложно повторить), сделать приватный репозиторий в гитхабе, юзать git crypt, ну и сделать, не знаю, микросервис который будет это все отдавать в приложение)
Звучит забавно, но есть ли что-нибудь похожее, но готовое?
Всякие кейволты в ажуре это не удобно т.к. там и ключи неудобно смотреть, да и пуллреквестов не сделаешь.
Кто-нибудь таким занимался?)
Привет. Можешь попробовать https://docs.microsoft.com/en-us/aspnet/config-builder
Как раз для олдового аспнет.
источник

NV

Natali Vol4ica in pro.net
Всем привет))
Вопрос немного архитектурный. Есть приложение, апи. Есть база. В базе есть Status {int StatusId; string Description; string CountryCode;}
Есть еще внешний сервис, общение через рест апи. В нем есть Data {int DataId; string CountryCode; string Status}, которую можно получать и патчить.
Основная задача - изменить статус Data через вызов внешнего сервиса.
Апи основного приложения должно принять StatusId и DataId, вынуть из БД Status.Description по айди (если нет такого- кинуть ошибку), вынуть из внешнего сервиса Data (и кинуть ошибку если данных нет), проверить что статус применим к данным - Status.CountryCode == Data.CountryCode, и отправить запрос во внешний сервис, передавая Data.Id и Status.Description.
Вопрос. Как и в каком порядке это сделать? Какие http коды ошибок возвращать?

У нас тут холивар)) вариантов 2
1)
- Вынуть статус из бд по айди, Если налл - 400.
- Вынуть дата из вн. сервиса по айди. Если налл - 404.
- Сравнить кантри коды. Если не совпадают - 400.
2)
- Вынуть Дата из вн. сервиса по айди. Если налл - 404.
- Вынуть статус из бд по айди и кантри коду, который только что получили из даты. Если налл - 400

Мне больше нравится первый вариант. Во втором я хз как разделять случаи когда "статус по айди не найден в бд" и "нельзя применить статус к дата с другим кантри кодом". Мне кажется что это две разные ошибки и что они должны возвращаться раздельно.
Но тот, с кем у меня был холивар, прям блевал от первого варианта, по этому я в сомнениях)))
Да и с кодами хз что, не уверена что нормально кидать 400 на все случаи
Что скажете?)
источник

LU

Lars Ulrich in pro.net
Natali Vol4ica
Всем привет))
Вопрос немного архитектурный. Есть приложение, апи. Есть база. В базе есть Status {int StatusId; string Description; string CountryCode;}
Есть еще внешний сервис, общение через рест апи. В нем есть Data {int DataId; string CountryCode; string Status}, которую можно получать и патчить.
Основная задача - изменить статус Data через вызов внешнего сервиса.
Апи основного приложения должно принять StatusId и DataId, вынуть из БД Status.Description по айди (если нет такого- кинуть ошибку), вынуть из внешнего сервиса Data (и кинуть ошибку если данных нет), проверить что статус применим к данным - Status.CountryCode == Data.CountryCode, и отправить запрос во внешний сервис, передавая Data.Id и Status.Description.
Вопрос. Как и в каком порядке это сделать? Какие http коды ошибок возвращать?

У нас тут холивар)) вариантов 2
1)
- Вынуть статус из бд по айди, Если налл - 400.
- Вынуть дата из вн. сервиса по айди. Если налл - 404.
- Сравнить кантри коды. Если не совпадают - 400.
2)
- Вынуть Дата из вн. сервиса по айди. Если налл - 404.
- Вынуть статус из бд по айди и кантри коду, который только что получили из даты. Если налл - 400

Мне больше нравится первый вариант. Во втором я хз как разделять случаи когда "статус по айди не найден в бд" и "нельзя применить статус к дата с другим кантри кодом". Мне кажется что это две разные ошибки и что они должны возвращаться раздельно.
Но тот, с кем у меня был холивар, прям блевал от первого варианта, по этому я в сомнениях)))
Да и с кодами хз что, не уверена что нормально кидать 400 на все случаи
Что скажете?)
Сорри, что не по сути, пятница. Слыхал прохладную историю на счёт 400 ошибки на все случаи. Ребята в схожем случае (отсутствия чего-то нужного для внятного ответа) отвечали  418 I’m a teapot https://tools.ietf.org/html/rfc2324#section-2.3.2
источник

NV

Natali Vol4ica in pro.net
норм)))
источник