Поделиться через


Ошибка компилятора CS1930

Обновлен: Ноябрь 2007

Сообщение об ошибке

Переменная диапазона "имя" уже объявлена
The range variable 'name' has already been declared

Переменная диапазона в выражении запроса находится в области до окончания выражения запроса. Следовательно, она должна иметь уникальный идентификатор.

Исправление ошибки

  • Присвойте уникальное имя каждой переменной диапазона, включаемой в выражение запроса.

Пример

Следующий пример приводит к возникновению ошибки CS1930, поскольку идентификатор num используется для переменной диапазона в предложении from и для переменной диапазона, представленной предложением let.

// cs1930.cs
using System.Linq;
class Program
{
    static void Main()
    {
        int[] nums = { 0, 1, 2, 3, 4, 5 };
        var query = from num in nums
                    let num = 3 // CS1930
                    select num; 
    }
}

См. также

Основные понятия

Выражения запросов LINQ (Руководство по программированию в C#)