Derleyici Hatası CS1937
'name' adı, 'equals' öğesinin sol tarafındaki kapsamda değil. 'equals' öğesinin her iki tarafındaki ifadeleri değiştirmeyi göz önünde bulundurun.
equals
anahtar sözcüğü, iki ifade arasındaki eşitliği belirlemek için yan tümcesinde kullanılan özel bir join
işleçtir. Sol taraftaki kaynak dizisinin aralık değişkeni eşittir'in sol tarafındaki kapsamdadır ve sağ taraftaki kaynağın aralık değişkeni yalnızca eşittir öğesinin sol tarafındaki kapsam içindedir. Aşağıdaki kod örneğinde IntelliSense ile denemeler yaparak bunu doğrulayabilirsiniz.
- Aşağıdaki örnekteki açıklama satırına gösterildiği gibi iki aralık değişkeninin konumunu değiştirin:
Aşağıdaki örnek CS1937 oluşturur.
// cs1937.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 // CS1937
// Try the following line instead.
//join b in sourceB on a equals b
select new { a, b };
}
}
Sol tarafa genellikle "dış" taraf, sağ tarafa ise genellikle "iç" taraf denir.
.NET geri bildirimi
.NET, açık kaynak bir projedir. Geri bildirim sağlamak için bir bağlantı seçin: