2012-01-06 2 views
1

У меня есть функция, где я хочу отображать число в тексте.Показать номер в тексте

if (all > 120) 
{ 
    int w_m = 120 - il_os; 
    string text = "free room: {0}", w_m; 
    ModelState.AddModelError("", text); 
} 

, но у меня есть ошибка:

Error 1 A local variable named 'w_m' is already defined in this scope

хау номер дисплея с текстом в ModelState.AddModelError?

ответ

3

Вы упускаете функцию там:

string text = string.Format("free room: {0}", w_m); 

заполнителей в строках не языковая функция! Прямо сейчас вы снова объявляете переменную w_m, как string. Это является особенность:

int a, b, c; 
0

Ваша ошибка не имеет ничего общего с отображением числа в тексте. Вы объявляете переменную (w_m), которая уже находится в этой области.

w_m должно быть объявлено до вашего предложения if. Если вы хотите повторно использовать w_m переменных, а затем изменить эту строку на:

w_m = 120 - il_os; 

Что касается ввода этого числа в строке, вы можете сделать несколько вещей:

string text = "free room: " + w_m.ToString(); 

Или

string text = string.Format("free room: {0}", w_m); 
3

Вы должны использовать String.Format для того, чтобы формат строки в той манере

string text = String.Format("free room: {0}", w_m); 

Выполнение этого также приведет к удалению ошибки, которую вы видите, поскольку текущий синтаксис, который вы используете, вызывает w_m, который будет обновлен как локальный string.

+1

Он объявил переменную w_m один раз как int (int w_m = 120 - il_ox;), а затем снова как строку. Он объявляет переменную «текст» как строку, а затем инициализирует ее значение «free room: {0}». Затем в той же строке объявляем w_m как другую строковую переменную. –

+0

@JeffReddy спасибо, обновил ответ – JaredPar

0
string text = string.Format("free room: {0}", w_m); 

В своем коде компилятор считает, что w_m еще одно заявление, как:

string a, b; 
0

использование String.Format, который будет использоваться как это:

string text = String.Format("free room: {0}", w_m); 

Edit: Избитый к нему, должны знать найти ссылку MSDN будет стоить мне эти драгоценные секунды.

Смежные вопросы