Я думаю, что это проблема, но это слишком долго, чтобы быть комментарием ... Я удалю, если это не ответ.
Когда вы создаете свойство, подобное этому: public string ans { get; set; }
, вы ничего не устанавливаете для него, поэтому ans
на самом деле null
.
Это вызывает проблему во второй последней строке: theanswer = new string(inputSplit.Where(x => x.Contains(ans)).Select(x => x[0]).ToArray()[0], 1);
. В середине этой строки вы проверяете, если ... x.Contains(ans))
.
Если вы измените public string ans { get; set; }
на public string ans = ""
, он никогда не будет null
в любой точке.
Я не знаю, является ли мое объяснение полностью правильным, но установка ans
на ""
вместо того, чтобы использовать его как свойство, заставила его работать на меня. Попробуйте и сообщите, если это не сработает :)