
Gid
30.04.2017
11:29:04

Леонид
30.04.2017
11:29:27
там нужно еще фабрику для контекста создавать

Владимир
30.04.2017
11:30:58
А что ты через докер разворачиваешь?
У меня вообще это консольное приложение, которое воспроизводит все эти стартапы. Но это я успешно сделал, ef tools детектит этот класс и пытается сбилдить контекст по его настройкам. Но не может получить конекшен стринг.
Это телеграмбот.

Google

Леонид
30.04.2017
11:31:39
в зависимости от енваермента

Владимир
30.04.2017
11:33:17
У меня сейчас это делается в startup успешно, а если делать фабрику, то в нее не будет передаваться конфигурейшен и надо будет вручную вытаскивать.

Mikhail
30.04.2017
11:33:22

Владимир
30.04.2017
11:33:39
Вон у гида оно из стартапа работает, как должно

Mikhail
30.04.2017
11:33:40
Нинада фабрики

Леонид
30.04.2017
11:33:54

Mikhail
30.04.2017
11:34:11

Леонид
30.04.2017
11:34:11
Когда ты пишешь ef database update
Посмотри
Откуда берется коннекшн стринги
И когда ты стартуешь приложение

Mikhail
30.04.2017
11:36:21

Google

Владимир
30.04.2017
11:36:33
Откуда берется коннекшн стринги
смотрит есть ли фабрика
если нет, смотрит есть ли дефолт конструктор
если нет, ищет startup класс, создает его и пытается получить готовый контекст через него.

Mikhail
30.04.2017
11:38:54
Типа ef database update -e production
Или я ошибаюсь?

Владимир
30.04.2017
11:39:29
можно

Mikhail
30.04.2017
11:39:31
Гид так и запускает миграции

Владимир
30.04.2017
11:39:37
но в енваромент варибл все равно ноль
Лол
Заработало

Mikhail
30.04.2017
11:49:31
Че было то?

Владимир
30.04.2017
11:50:50
public Startup()
{
var environmentVariable = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT");
var configuration = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile($"AppSettings.{environmentVariable}.json", true, true)
.AddEnvironmentVariables()
.Build();
Configuration = configuration;
}
Раньше было так, я вытягивал вручную переменную окружения. Ее видимо ef tools не устанавливал.

Aga
30.04.2017
11:53:16
Изи

Владимир
30.04.2017
11:53:34
public Startup(IHostingEnvironment env)
{
...
.AddJsonFile($"AppSettings.{env.EnvironmentName}.json", true, true)
...
}
Сделал как у гида.
В вызывающем классе теперь стал вытаскивать эту переменную. Видимо. ef tools засовывает этот свой энваромент не в переменную окружения, а в IHostingEnvironment.

Aga
30.04.2017
11:53:56
Хммм

Mikhail
30.04.2017
11:54:11
Да, он вроде не могёт переменную окружения
Я выше ссыль на гитхаб кидал

Владимир
30.04.2017
11:54:41
В создающем Startup объект коде, просто создаю объект HostingEnvironment, и засовываю туда то, что вытянул из переменной окружения.

Mikhail
30.04.2017
11:54:51
Если я конечно верно их понял там

† Dr◬ider †
30.04.2017
11:55:19
Ужс
Почему никто не использует выделение для кода в своих сообщениях
Мало того, что не на пастбине участок или на скрине, так ещё и без выделения

Mikhail
30.04.2017
11:55:50
We don't currently honor theASPNETCORE_ENVIRONMENT environment variable. You should be able to get it working by using the following.
dotnet ef database update --environment %ASPNETCORE_ENVIRONMENT%

Владимир
30.04.2017
11:56:36
тем не менее, они сапортят Startup класс с пустым конструктором...

Google

Владимир
30.04.2017
11:57:04

Mikhail
30.04.2017
11:57:12
Так если я правильно понимаю если использовать команду из их примера - все заработает
И можно делать так, как раньше было.
Вообще там говорят, что надо поддерживать. Но когда будут - не уточнили?

Владимир
30.04.2017
11:58:17
Заработает, если у ты в коде вытаскиваешь энваронмент из IHostingEnvironment, а не из переменной окружения.

† Dr◬ider †
30.04.2017
11:59:13

Mikhail
30.04.2017
11:59:31
А зачем тогда ты указываешь в конце
А зачем тогда ты указываешь в конце
dotnet ef database update --environment %ASPNETCORE_ENVIRONMENT%

Владимир
30.04.2017
11:59:44

† Dr◬ider †
30.04.2017
12:00:24
Да нет же
Бл
Ладно

Mikhail
30.04.2017
12:00:30
Я подумал что aspnetcore_environment в конце команды именно для этого

† Dr◬ider †
30.04.2017
12:00:40
Значит с глазами не очень у меня

Mikhail
30.04.2017
12:00:50
Чтоб ты мог использовать его так, как у тебя было изначально

Владимир
30.04.2017
12:01:07

Mikhail
30.04.2017
12:01:54
Могли б и удобнее сделать

Владимир
30.04.2017
12:06:01
Они сделали под стандарный шаблон веб приложения. Консольные приложения по их мнению, видимо, с их фичами использоваться не должны.

Илья
30.04.2017
12:57:05
а че скоро чтоли Visual Studio под линукс выйдет?
под мак уже вроде сделали, осталось только под линукс

Gid
30.04.2017
12:57:28

Google

Gid
30.04.2017
12:57:31
что сделали

Илья
30.04.2017
12:57:46
студию

Gid
30.04.2017
12:58:12
кто тебе такое сказал?

Илья
30.04.2017
12:58:34

Gid
30.04.2017
12:58:50
это переделанный ксамарин
там и 30% фич студии нет
ну или моно переделанное
не помню
один хуй

Илья
30.04.2017
12:59:58
ну все начинается с малого))
постепенно допилят до уровня студии

Friedrich
30.04.2017
13:06:48

Gid
30.04.2017
13:07:15
Но это же текстовый редактор

Friedrich
30.04.2017
13:07:26
Ну и визуал студия тоже!

Gid
30.04.2017
13:07:34
визуал студия это иде

Friedrich
30.04.2017
13:07:41
Вот я открываю текстовый XML-файл. И какой редактор у меня прописан? Правильно, вижуал студия!
Значит, она текстовый редактор ,3
Обычно на продакшене лезешь редактировать какой-нибудь конфиг, и, если там установлена SSMS, оно пытается конфиг открыть в VS Isolated Shell... Это просто ужас.
Очень плохой текстовый редактор.

Sergey
30.04.2017
13:09:33

Google

Friedrich
30.04.2017
13:09:50
Чтобы админить.

Sergey
30.04.2017
13:10:18
а удаленно нельзя?

Friedrich
30.04.2017
13:10:18
К каждой продакшен-машине обычно привязан пленный админ, который за ней сидит и админит.
Удалённо можно, но это для удалённых людей.
Пока пленного админа ещё не удалили, он прям на месте админить может.

Sergey
30.04.2017
13:11:07

Friedrich
30.04.2017
13:11:22
Но он так и делает.

Sergey
30.04.2017
13:11:30
никаких SSMS на сервере
нева ева

Friedrich
30.04.2017
13:11:35
Короче, не спрашивайте меня. Я не разбираюсь в бизнес-процессах заказчика.
У нас один тут пытался заказчика учить жизни.
Так ему по почте палец прислали.
Больше не пытаемся.

Sergey
30.04.2017
13:12:19
вы бы еще на сервер мс оффис поставили, чтобы через итеропы с екселем работать

Mikhail
30.04.2017
13:12:24
Чей палец хоть?

Friedrich
30.04.2017
13:12:32
У нас даже 1С на сервере!

Gid
30.04.2017
13:22:17
Эта группа больше не существует