имя атрибута в текстовом тексте данных (linq to sql) - PullRequest
0 голосов
/ 14 ноября 2010

Я использую LINQ to SQL в Visual Studio 2010 с C #.

У меня есть следующая таблица с такими атрибутами, как:

table abacus(
   a0 float
   a1 float
   a2 float
   .....)

Могу ли я получить второй атрибут (a1) и вернуть строковое значение командой из DataContext?

Я думаю о чем-то вроде cxt.ABACUSs.GetAttribut(2) -> a1.

Ответы [ 3 ]

0 голосов
/ 15 ноября 2010

Моим решением будет создание класса для создания запросов linq.

A List<string> будет использоваться для хранения имен атрибутов, которые будут использоваться для создания запроса.

0 голосов
/ 15 ноября 2010

Вы можете написать метод, который будет выбирать столбец для выбора на основе заданного индекса.

0 голосов
/ 14 ноября 2010

Не уверен, понимаю ли я, что вы ищете .....

Чтобы выбрать строку из таблицы, используйте:

var row = ctx.ABACUSs.FirstOrDefault(a => a.ID = 5); // or whatever

Затем, когда у вас есть этот элемент, вы можете прочитать его свойства - столбец a1 должен быть превращен в свойство a1 для этого объекта:

// check for != null just to be safe....
if(row != null)
{
   var yourResult = row.a1;
}

Таблицы всегда организованы в строки и столбцы - сначала нужно выбрать строку в Linq-to-SQL, превратить ее в объект, а затем вы можете проверить / прочитать свойства этого объекта (которые соответствуют столбцам) вашего стола).

Поскольку вы возвращаете объекты (экземпляры объектов) для каждой строки в Linq-to-SQL, у которых есть свойства (которые вы читаете по их имени), нет понятия «второй атрибут», как в SqlDataReader. Вы не можете получить «второй атрибут этой строки» - вам нужно знать его имя.

Или чего именно вы пытаетесь достичь ???

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...