2016-06-01 3 views
0

Я хочу заполнить datagrid информацией, которую я получаю из запроса linq. DataGrid автоматически генерирует ее столбцыЗаполнить сетку одним столбцом от linq Query

Использование БД в качестве новой DataClassesDataContext

 Dim fillGrid = From info In db.tableName 
         Select info.Description 
     DataGrid1.DataSource = fillGrid 
     DataGrid1.DataBind() 
    End Using 

Этот код создает столбец под названием «Длина»

Если добавить еще один столбец, чтобы выбрать то, что создает столбцы правильно, так как список имеет -> Описание = "": ID = ""

Как я могу получить linq для генерации имени столбца с помощью одного столбца?

ответ

1

Linq to sql создает анонимный тип, когда ваш выбор не относится к известному типу. В вашем случае это список анонимного типа строки. Связывание с .net работает только для свойств, а не для полей. Таким образом, для свойства по умолчанию для свойства string используется свойство Length. Вместо этого я хотел бы предложить вам создать класс с строковым свойством описанием и сделать выбор, как этот объект класса:

Public Class StringCollection 
    Private _Description As String 
    Public Property Description() As String 
     Get 
      Return _Description 
     End Get 
     Set(ByVal value As String) 
      _Description = value 
     End Set 
    End Property 
End Class 

Затем сделать выбор:

Dim fillGrid = From info In db.tableName 
          Select New StringCollection With {.Description = info.Pershkrimi} 
Смежные вопросы