2016-12-22 10 views
2

У меня есть веб-API запускает хранимую процедуру и возвращает записи из записи table.The включает в себя поле Int под названием CounterSeqФормат ответа от Web API

[HttpGet] 
public IHttpActionResult Get(string Account) 
{ 
// other code for connecting to the SQL seerver and calling the stored procedure 
reader = command.ExecuteReader(); 
List<QueryResult>qresults = new List<QueryResult>(); 
    while (reader.Read()) 
    { 
     QueryResult qr = new QueryResult(); 
     qr.AccountID = reader["AccountID"].ToString(); 
     qr.CounterSeq = reader["CounterSeq"].ToString(); 
     qresults.Add(qr); 
    } 
    DbConnection.Close(); 
    return Ok(qresults); 

Формат CounterSeq в ответ должно быть 001. Если добавить он ниже заявление как

qr.CounterSeq ="00"+ reader["CounterSeq"].ToString(); 

но это даже для двух цифр он показывает, как «0012», но он должен быть «012», как я могу подойти к этому

ответ

2

Y НУ может использовать PadLeft

qr.CounterSeq = reader["CounterSeq"].ToString().PadLeft(3, '0'); 

Возвращает новую строку заданной длины, в котором начало текущей строки дополняется пробелами или с указанным символом Unicode.

2

T чень это:

qr.CounterSeq =reader["CounterSeq"].ToString("0000");

+0

Он не бросает ошибку Нет перегрузки для метода «ToString» принимает аргументы 1 – trx

+0

Какой версии визуальной студии вы используете? – Peter4499

+0

У меня есть визуальная студия 2013 – trx

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