Ошибка компилятора CS1938
Имя "имя" не находится в области справа от "equals". Рассмотрите возможность поменять местами выражения с обеих сторон оператора "equals".
Ключевое слово equals
— это специальный оператор, который используется в предложении join
для определения равенства двух выражений. Переменная диапазона для левой части исходной последовательности находится в области с левой стороны от "equals", а переменная диапазона для правой части исходной последовательности — только в области с левой стороны от "equals". Это можно проверить, поэкспериментировав с IntelliSense в следующем примере кода.
- Поменяйте местами две переменные диапазона, как показано в строке комментария в следующем примере:
Следующий код приводит к возникновению ошибки CS1938:
// cs1938.cs
using System.Linq;
class Test
{
static void Main()
{
int[] sourceA = { 1, 2, 3, 4, 5 };
int[] sourceB = { 3, 4, 5, 6, 7 };
var query = from a in sourceA
join b in sourceB on b equals a // CS1938
// Try the following line instead.
// join b in sourceB on a equals b
select new { a, b };
}
}
Отзыв о .NET
.NET — это проект с открытым исходным кодом. Выберите ссылку, чтобы оставить отзыв: