Как получить строковое значение из вида сетки - PullRequest
0 голосов
/ 15 сентября 2011
string messagestatus;

string.TryParse(
  Convert.ToString(DataBinder.Eval(e.Row.DataItem, "Status")), out messagestatus
);

Я пытаюсь получить значение статуса для каждой строки. Статус либо отправлен, либо сохранен. я получаю сообщение об ошибке: строка не содержит определения для попытки разбора.

Я попытался получить целое число, и оно отлично сработало, как решить вышеприведенное

int msgid;

int.TryParse(
  Convert.ToString(DataBinder.Eval(e.Row.DataItem, "MsgID")), out msgid
);

Ответы [ 3 ]

1 голос
/ 15 сентября 2011

Правильно, у строкового класса нет метода TryParse.

Это:

string.TryParse(
  Convert.ToString(DataBinder.Eval(e.Row.DataItem, "Status")), out messagestatus
);

Может быть сделано как:

string messageStatus= Convert.ToString(DataBinder.Eval(e.Row.DataItem, "Status"));
0 голосов
/ 15 сентября 2011
string messagestatus;

 if (!string.NullEmptyOrWhitespace( (DataBinder.Eval(e.Row.DataItem, "Status").ToString()) ? messagestatus = (DataBinder.Eval(e.Row.DataItem, "Status").ToString() : messagestatus = "unknown");

просто еще один способ написать это в основном то же самое

0 голосов
/ 15 сентября 2011

вы не можете иметь такой код:?

string messagestatus = String.Empty;

var objStatus = DataBinder.Eval(e.Row.DataItem, "Status");

if(objStatus != null)
{
  messagestatus = objStatus.ToString();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...