Выберите Словарь <T1, T2> с LINQ

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

DECLARE @sqlCommand varchar(1000)
SET @sqlCommand = 'SELECT * from yourtable'
EXEC (@sqlCommand)
158
задан Rich 6 March 2009 в 00:20
поделиться

2 ответа

Методы расширений также обеспечивают расширение ToDictionary. Это справедливо просто в использовании, общее использование передает селектор лямбды для ключа и получает объект как значение, но можно передать селектор лямбды и для ключа и для значения.

class SomeObject
{
    public int ID { get; set; }
    public string Name { get; set; }
}

SomeObject[] objects = new SomeObject[]
{
    new SomeObject { ID = 1, Name = "Hello" },
    new SomeObject { ID = 2, Name = "World" }
};

Dictionary<int, string> objectDictionary = objects.ToDictionary(o => o.ID, o => o.Name);

Тогда objectDictionary[1] содержал бы значение "Привет"

259
ответ дан Quintin Robinson 4 November 2019 в 17:25
поделиться
var dictionary = (from x in y 
                  select new SomeClass
                  {
                      prop1 = value1,
                      prop2 = value2
                  }
                  ).ToDictionary(item => item.prop1);

Это предполагает, что SomeClass.prop1 желаемое Key для словаря.

42
ответ дан abatishchev 4 November 2019 в 17:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: