При обучении работы с базой данных MS SQL Server, при попытке вывести данные со столбцов ID, Name, Points таблицы users, программа по какой-то причине выдает данные строки Points с большим отступом как показано на рисунке:
Прошу объяснить мне по почему бывает такая ситуация, и как решить данную проблему.
Код метода:
static void print()
{
DataClassesUserInfoDataContext Userinfo = new DataClassesUserInfoDataContext();
var custs = from c in Userinfo.users
select new { Id = c.ID, Name = c.Name, Points = c.Points };
Console.WriteLine("ID - Name - Points");
foreach (var cust in custs)
{
Console.WriteLine("{0} - {1} - {2}", cust.Id, cust.Name, cust.Points);
}
Console.WriteLine("Нажмите любую клавишу для завершения работы...");
Console.ReadKey();
Environment.Exit(0);
}
Ответ
Потому что значения в поле Name заканчиваются хвостами из пробелов.
Console.WriteLine("[{0}] - [{1}] - [{2}]", cust.Id, cust.Name, cust.Points);
Вероятно, тип поля в базе - строковый, фиксированной длины.
Console.WriteLine("{0} - {1} - {2}", cust.Id, cust.Name.Trim(), cust.Points);
Комментариев нет:
Отправить комментарий