0 голосов
спросил от в категории Другие
string argHTTPS = args[0]; string argCustDBName = args[1]; 

Это будет работать, только если у вас есть два или более параметров. Если вы хотите, чтобы он был динамическим, вам нужно проверить, сколько параметров передано. Начните с установки значений по умолчанию для всех необязательных параметров, а затем замените все, которые указаны в командной строке.

Пожалуйста, войдите или зарегистрируйтесь чтобы ответить на этот вопрос.

0 голосов
ответил от
Ваш код не имеет никакого смысла. Если пользователь не передает какие-либо аргументы, он запускает приложение Windows Forms.

Если пользователь передает аргументы, вы добавляете каждый аргумент к тому, что кажется Список (я понятия не имею, потому что вы никогда не показываете определение mainObject!), Назначьте первые два аргумента двум различным переменным, даже если предоставлен только один аргумент (!), А затем выбросите все это и ничего не сделайте с любым из них.

О, и у вас в коде отсутствует закрывающая фигурная скобка перед оператором catch.

Один из способов присваивания аргументов отдельным переменным является проверка количества аргументов:
// Init the variables to empty strings for default values. string argHTTPS = string.Empty; string argCustDbName = string.Empty; if (args.Count() > 0) {     argHTTPS = args[0]; } if (args.Count() > 1) {     argCustDbName = args[1]; } 

Но, как я уже сказал, вы ничего не делаете с этими переменными, и я не знаю, что такое mainObject, поэтому я думаю, что вы делаете то, чего не следует делать в основном методе вашего кода запуска.

Категории

Добро пожаловать на сайт DraftingCode Q&A, где вы можете задавать вопросы и получать ответы от других членов сообщества.

Связанных вопросов не найдено

...