2012-08-23 2 views
1

У меня есть база данных с хранимой процедурой и DataGridView в моей форме. Я хочу привязать результат процедуры к DataGridView, и все работает - таблица заполняется результатом процедуры, но colums имеют подчеркивание («_») вместо пробелов.
В примере: «Cookies count» отображается как «Cookies_count».Пространства изменены на «_» при возврате результата из процедуры в C#

код в сохраненных имен столбцов настройки процедуры:
SELECT
Films.TitlePL as [Polish title],
Films.TitleOrg as [Original title],
FilmCategory.CategoryName as [Category name],
Films.ProductionYear as [Year of production],

C# код для процедуры запуска с аргументами и привязка к DataGridView здесь:

 var result = DB.spFilmFindSearchGridview(null, null, null, null, null, null, null, null); 

     List<spFilmFindSearchGridviewResult> Res = new List<spFilmFindSearchGridviewResult>(); 
     Res = result.ToList(); 

     DataGridViewFilmFind.DataSource = Res; 
+0

Вы можете проверить путем проверки, что значения или не имеют подчеркивание в этом списке, 'Res'? –

ответ

0

Я полагаю, вы используете EF или LINQ для SQL ? Это должно быть особенностью этой структуры. Поскольку spFilmFindSearchGridviewResult - это класс, он не может иметь пробелов в именах свойств, поэтому фреймворк должен добавлять символы подчеркивания.

EDIT: чтобы исправить это, вы должны создать столбцы самостоятельно и установить AutoGenerateColumns ложь

+0

У меня нет этого свойства в DataGridView – Aru

+0

@Aru, смотрящий на DataGridView здесь, я вижу это свойство, и оно появляется в intellisense. Может быть, у вас более старая версия? Еще один вариант - просто пройти через коллекцию столбцов и изменить заголовок, чтобы удалить подчеркивание. – MikeKulls