2014-01-12 3 views
0

Я бегу мое приложение C#, который является большим, поэтому я просто включал в себя часть кодаBool to string in C#?

Мой код:

allowGift = Convert.ToInt32(dRow[14]) == 1; 
allowInventoryStack = Convert.ToInt32(dRow[15]) == 1; 
interactionType = InterractionTypes.GetTypeFromString((string)dRow[16]); //Line of error 

И ошибка трассировки стека

System.InvalidCastException: Невозможно для литья объекта типа «System.Boolean» для ввода «System.String»

+1

Что такое тип 'dRow'? И каков тип 'interactiveType'? и какая строка вызывает ошибку? – Liel

+2

Вы, кажется, используете [этот класс] (https://github.com/Gnuns/Bfly/blob/master/Butterfly%20Emulator/HabboHotel/Items/InteractionType.cs). Хотя большинство приведенных ниже ответов являются благими намерениями, они не будут работать, поскольку «InteractionType» не имеет преобразования из «True» или «False». Мне жаль говорить, что ваш вопрос не отвечает, из информации, которую вы нам дали. –

+0

Посмотрите на перечисление 'InteractionType' (которое включает в себя такие значения, как« футбол »,« телепорт »и« firegate »), и убедитесь, что значения, которые вы передаете в GetTypeFromString, находятся там. –

ответ

1

Вместо этого:

(string)dRow[16] 

Попробуйте ToString:

dRow[16].ToString() 

Convert.ToString Или:

Convert.ToString(dRow[16]) 
1

Измените эту строку:

interactionType = InterractionTypes.GetTypeFromString((string)dRow[16]); //Line of error 

к этому:

interactionType = InterractionTypes.GetTypeFromString(dRow[16].ToString()); //Line of error 
+0

Тип unkown-взаимодействия в синтаксическом коде: False System.InvalidCastException: Указанный приказ недействителен – Fernando

+0

Пожалуйста, просмотрите комментарии @Michael Petrotta для вашего вопроса. Эта ошибка не относится к вашему вопросу, а именно, как преобразовать Boolean в String. Эта ошибка возникает из-за использования библиотеки 'InterractionTypes', которую вы используете, которая не принимает' False' как допустимое входное значение. – Liel

0

(string)dRow[16] Вместо использования dRow[16].ToString()

+0

Тип unkown-взаимодействия в синтаксическом анализе: False System.InvalidCastException: Указанный приведение недействительно – Fernando

1

bool не может быть непосредственно приведён к string он должен быть преобразован. Вы можете просто использовать Converter класс, как вы сделали в другом месте в коде

InterractionTypes.GetTypeFromString(Convert.ToString(dRow[16]));