Dizi ve koleksiyon bildirimleri ile başlatma ifadelerindeki hataları ve uyarıları düzeltme

Bu makale aşağıdaki derleyici hatalarını kapsar:

  • CS0022: [] içindeki dizin sayısı yanlış, beklenen 'sayı'
  • CS0178: Geçersiz derece belirtici: beklenen ',' veya ']'
  • CS0248: Negatif boyutlu bir dizi oluşturulamıyor
  • CS0270: Dizi boyutu değişken bildiriminde belirtilemez ('new' ifadesiyle başlatmayı deneyin)
  • CS0611: Dizi öğeleri belirli bir türde olamaz
  • CS0623: Dizi başlatıcılar yalnızca bir değişkende veya alan başlatıcıda kullanılabilir. Bunun yerine yeni bir ifade kullanmayı deneyin.
  • CS0650: Hatalı dizi bildirimcisi: Yönetilen bir dizi bildirmek için rank tanımlayıcısı değişkenin tanımlayıcısının önüne yer alır. Sabit boyutlu arabellek alanı bildirmek için, alan türünden önce sabit anahtar sözcüğünü kullanın.
  • CS0719: Dizi öğeleri statik türde olamaz
  • CS0747: Geçersiz başlatıcı üye bildirimcisi.
  • CS0820: Dizi başlatıcı örtük türlendirilmiş bir yerel değişkene atanamıyor
  • CS0826: Örtük olarak yazılan dizi için en iyi tür bulunamadı.
  • CS0846: İç içe dizi başlatıcı bekleniyor
  • CS1063: Aşırı yüklenmiş en iyi 'Add' yöntemi, koleksiyon başlatıcı öğesi için kullanım dışıdır.
  • CS1552: Dizi türü tanımlayıcısı, []parametre adından önce görünmelidir
  • CS1586: Dizi oluşturma işlemi dizi boyutuna veya dizi başlatıcıya sahip olmalıdır
  • CS1920: Öğe başlatıcı boş olamaz.
  • CS1921: En iyi aşırı yüklenmiş yöntem eşleşmesi başlatıcı öğesi için yanlış imza içeriyor. Başlatılabilir Add , erişilebilir bir örnek yöntemi olmalıdır.
  • CS1925: Koleksiyon başlatıcı ile 'type' türünde nesne başlatılamıyor.
  • CS1950: Koleksiyon başlatıcısı için kullanılan en uygun aşırı yüklenmiş Add yönteminde bazı geçersiz bağımsız değişkenler bulunuyor.
  • CS1954: Koleksiyon başlatıcı öğesi için en iyi aşırı yüklenmiş yöntem eşleşmesi kullanılamaz. 'Add' koleksiyon başlatıcı yöntemlerinin ref veya out parametreleri olamaz.
  • CS9174: Tür oluşturulabilir olmadığından, bir koleksiyon literal ile başlatılamıyor.
  • CS9176: Koleksiyon literaali için bir hedef tür yok.
  • CS9185: CollectionBuilderAttribute oluşturucu türü genel olmayan bir sınıf veya yapı olmalıdır.
  • CS9186: CollectionBuilderAttribute yöntemi adı geçersiz.
  • CS9187: Beklenen imzaya sahip erişilebilir bir yöntem bulunamadı: türünde tek bir parametreye ReadOnlySpan<T>sahip statik bir yöntem ve doğru dönüş türü
  • CS9188: Türünde CollectionBuilderAttribute var ancak öğe türü yok.
  • CS9203: Bu türdeki bir koleksiyon ifadesi, geçerli kapsamın dışında kullanıma sunulduğundan bu bağlamda kullanılamaz.
  • CS9210: Bu sürümü System.Collections.Immutable.ImmutableArray<T>koleksiyon ifadeleriyle kullanılamaz.
  • CS9212: 'type', 'member' için genel bir örnek veya uzantı tanımı içermediğinden, '..' yayılma operatörü 'type' türündeki değişkenler üzerinde çalışamaz.
  • CS9213: 'type' hedefinde koleksiyon ifadesi öğesi türü yok.
  • CS9214: Koleksiyon ifade türünün bağımsız değişken olmadan çağrılabilen uygun bir oluşturucuya sahip olması gerekir.
  • CS9215: 'type' koleksiyon ifade türü, tek bir bağımsız değişkenle çağrılabilen bir 'Add' örneği veya uzantı yöntemine sahip olmalıdır.
  • CS9222: Koleksiyon başlatıcısı sonsuz bir 'tür' koleksiyonu örnekleme zinciriyle sonuçlanmaktadır.
  • CS9332: Filtre ifadesinde catch yan tümcesinin '..' spread işleci kullanılamaz.
  • CS9354: 'with(...)' öğesi ilk öğe olmalıdır
  • CS9355: 'with(...)' öğeleri 'type' türü için desteklenmiyor
  • CS9356: 'with(...)' öğesi bağımsız değişkenleri dinamik yapılamaz
  • CS9357: Salt okunur arayüz için 'with(...)' öğesi mevcutsa boş olmalıdır
  • CS9358: Bu koleksiyonun öğe türü bir başvuru yapısı veya başvuru yapılarına izin veren bir tür parametresi olmayabilir
  • CS9359: 'method' yöntemi için aşırı yükleme 'number' 'with(...)' öğesi bağımsız değişkenlerini almaz

Ayrıca, bu makalede aşağıdaki uyarılar ele alınmıştır:

  • CS1062: Koleksiyon başlatıcı öğesi için en iyi aşırı yüklenmiş "Add" yöntemi kullanımdan kalkmıştır.
  • CS1064: Koleksiyon başlatıcı öğesi için en iyi aşırı yüklenmiş Add yöntemi artık kullanılmıyor.
  • CS3007: Yalnızca adsız dizi türleriyle farklılık gösteren aşırı yüklenmiş 'method' yöntemi CLS uyumlu değil
  • CS3016: Öznitelik bağımsız değişkenleri olarak diziler CLS uyumlu değil
  • CS0251: Bir diziyi negatif dizinle dizinleme (dizi dizinleri her zaman sıfırdan başlar)
  • CS9208: Koleksiyon ifadesi beklenmeyen yığın ayırmalarına neden olabilir. Açıkça bir dizi oluşturmayı ve sonra ayırmayı açık hale getirmek için son türe dönüştürmeyi göz önünde bulundurun.
  • CS9209: Koleksiyon ifadesi , '..' yaymalarının kullanılması nedeniyle beklenmeyen yığın ayırmalarına neden olabilir. Açıkça bir dizi oluşturmayı ve sonra ayırmayı açık hale getirmek için son türe dönüştürmeyi göz önünde bulundurun.
  • CS9332: Filtre ifadesinde catch yan tümcesinin '..' spread işleci kullanılamaz.

Geçersiz dizi öğesi erişimi

  • CS0022: [] içerisindeki indeks sayısı hatalı, beklenen 'değer'
  • CS0251: Bir diziyi negatif dizinle dizinleme (dizi dizinleri her zaman sıfırdan başlar)

Dizi öğelerine doğru şekilde erişmek için bu dizin oluşturma kurallarını izleyin. Daha fazla bilgi için Diziler başlığına bakın.

  • Bildirilen boyutlar (CS0022) ile aynı sayıda dizin belirtin. Tek boyutlu bir dizi için bir dizin gerekir; Üç boyutlu bir dizi üç dizine ihtiyaç duyar.
  • Dizi dizinleri (CS0251) için yalnızca negatif olmayan tamsayılar kullanın. Dizi dizinleri her zaman sıfırdan başlar.

Geçersiz koleksiyon başlatıcısı

  • CS0747: Geçersiz başlatıcı üye bildirimcisi.
  • CS1920: Öğe başlatıcı boş olamaz.
  • CS1921: En iyi aşırı yüklenmiş metot eşleşmesi, başlatıcı öğe için yanlış bir imza içeriyor. Başlatılabilir Add erişilebilir bir örnek yöntemi olmalıdır.
  • CS1922: 'type' türü 'System.Collections.IEnumerable' uygulamadığından koleksiyon başlatıcısıyla 'type' türü başlatılamıyor.
  • CS1925: Koleksiyon başlatıcı ile 'type' türünde nesne başlatılamıyor.
  • CS1927: Uyarı: Yalnızca derlemeler için geçerli olduğundan /win32manifest modül için yok sayılıyor
  • CS1950: Koleksiyon başlatıcısı için mevcut en iyi aşırı yüklenmiş 'Add' yöntemi, bazı geçersiz bağımsız değişkenler içermektedir.
  • CS1954: Koleksiyon başlatıcı öğesi için en iyi aşırı yüklenmiş yöntem eşleşmesi kullanılamaz. 'Add' koleksiyon başlatıcı yöntemlerinin ref veya out parametreleri olamaz.
  • CS9174: Tür oluşturulamaz olduğundan koleksiyon değişmez değeriyle tür başlatılamıyor.
  • CS9176: Kolleksiyon literal için hedef tür yok.
  • CS9203: Bu türdeki bir koleksiyon ifadesi, geçerli kapsamın dışında kullanıma sunulduğundan bu bağlamda kullanılamaz.
  • CS9210: Bu sürümü System.Collections.Immutable.ImmutableArray<T> koleksiyon ifadeleriyle kullanılamaz.
  • CS9212: 'Yayma işleci'.. 'tür' türündeki değişkenler üzerinde çalışamaz çünkü 'tür', 'member' için genel bir örnek veya uzantı tanımı içermiyor.
  • CS9213: 'type' hedefinde koleksiyon ifadesi öğesi türü yok.
  • CS9214: Koleksiyon ifade türünün bağımsız değişken olmadan çağrılabilen uygun bir oluşturucuya sahip olması gerekir.
  • CS9215: 'type' koleksiyon ifade türü, tek bir bağımsız değişkenle çağrılabilen bir 'Add' örneği veya uzantı yöntemine sahip olmalıdır.
  • CS9222: Koleksiyon başlatıcısı, 'tür' koleksiyonunun sonsuz bir örneklendirme zinciriyle sonuçlanmasına neden olur.
  • CS9332: Catch yan tümcesinin filtre ifadesinde '..' spread işleci kullanılamaz.
  • CS9354: 'with(...)' öğesi ilk öğe olmalıdır
  • CS9355: 'with(...)' öğeleri 'type' türü için desteklenmiyor
  • CS9356: 'with(...)' elemanı argümanları dinamik olamaz
  • CS9357: Salt okunur arabirim için 'with(...)' öğesi boş olmalıdır
  • CS9358: Bu koleksiyonun öğe türü bir başvuru yapısı veya başvuru yapılarına izin veren bir tür parametresi olmayabilir
  • CS9359: 'method' için 'number' 'with(...)' öğe bağımsız değişkenlerini alan bir aşırı yükleme yok

Derleyici aşağıdaki uyarıları da oluşturabilir:

  • CS1062: Koleksiyon başlatıcı öğesi için en iyi aşırı yüklenmiş Add yöntemi eskidir.
  • CS1063: Koleksiyon başlatıcısının öğesi için en iyi aşırı yüklenmiş 'Add' metodu artık kullanılmıyor.
  • CS1064: Koleksiyon başlatıcı öğesi için en iyi aşırı yüklenmiş Add yöntemi kullanım dışıdır.
  • CS9208: Koleksiyon ifadesi beklenmeyen yığın ayırmalarına neden olabilir. Açıkça bir dizi oluşturmayı ve sonra ayırmayı açık hale getirmek için son türe dönüştürmeyi göz önünde bulundurun.
  • CS9209: Koleksiyon ifadesi , '..' yaymalarının kullanılması nedeniyle beklenmeyen yığın ayırmalarına neden olabilir. Açıkça bir dizi oluşturmayı ve sonra ayırmayı açık hale getirmek için son türe dönüştürmeyi göz önünde bulundurun.

Geçerli koleksiyon başlatıcıları oluşturmak için bu kuralları izleyin. Daha fazla bilgi için bkz . Koleksiyon ifadeleri.

  • Özellik başlatmayı aynı başlatıcıda (CS0747) öğe ekleme ile karıştırmayın.
  • Küme ayraçlı koleksiyon başlatıcılarına en az bir öğe ekleyin (CS1920).
  • Koleksiyon türünün IEnumerable uyguladığından emin olun (CS1922).
  • Koleksiyon başlatıcılarını yalnızca koleksiyon türleriyle (CS1925) kullanın.
  • Metodun Add erişilebilir olduğunu, öğe türüyle eşleşen bir parametre aldığını ve ref veya out değiştiricilerini kullanmadığını doğrulayın (CS1921, CS1954).
  • Belirsiz Add yöntem aşırı yüklemelerini (CS1950) çözün.
  • Derleyici çıkaramayınca koleksiyon ifadeleri için açık bir hedef türü sağlayın (CS9176, CS9213).
  • Koleksiyon türünün parametresiz bir oluşturucuyla (CS9174, CS9214) yapılabilmesini sağlayın.
  • Koleksiyon ifadelerinde referans güvenliğini ihlal edebilecek ref struct türlerini kullanmayın (CS9203).
  • Koleksiyon ifadeleri için ImmutableArray uyumlu bir çalışma zamanı sürümüne güncelleştirme (CS9210).
  • Spread işleci desteği (GetEnumerator) için numaralandırma desenlerini (örneğin) uygulayın.
  • Koleksiyon başlatmada döngüsel bağımlılıklardan kaçının (CS9222).
  • Catch yan tümcesi filtre ifadelerinde (CS9332) spread işlecini kullanmayın.
  • with(...) öğesini koleksiyon ifadelerinde ilk sıraya yerleştirin (CS9354).
  • with(...) öğelerini yalnızca koleksiyon ifade bağımsız değişkenlerini destekleyen türlerle kullanın (CS9355).
  • Öğelerde with(...) dinamik bağımsız değişkenler kullanmayın (CS9356).
  • Salt okunur arabirim türleri (with()) için boş kullanın.
  • Başvuru yapısı türlerini desteklemeyen koleksiyonlarda öğe türleri olarak kullanmayın (CS9358).
  • Bağımsız değişkenlerin with(...) sayısını kullanılabilir oluşturucu aşırı yüklemeleriyle (CS9359) eşleştirin.

Geçersiz dizi sırası

  • CS0178: Geçersiz derece belirtici: beklenen ',' veya ']'
  • CS0650: Hatalı dizi bildirimcisi: Yönetilen bir dizi bildirmek için rank tanımlayıcısı değişkenin tanımlayıcısının önüne yer alır. Sabit boyutlu arabellek alanı bildirmek için, alan türünden önce sabit anahtar sözcüğünü kullanın.
  • CS1552: Dizi türü tanımlayıcısı, []parametre adından önce görünmelidir

Dizileri doğru şekilde bildirmek için doğru söz dizimi sırasını izleyin. Daha fazla bilgi için dizi başlatıcıları hakkında Diziler ve C# Dil Belirtimi bölümüne bakın.

Dizi bildirimi şu belirteçlerden sırayla oluşur:

  1. Dizi öğelerinin türü (örneğin, int, stringveya SomeClassType).
  2. İsteğe bağlı olarak birden çok boyut için virgül içeren dizi köşeli ayraçları.
  3. Değişken adı.

Dizi boyutlarını belirtirken şunları kullanabilirsiniz:

  • Süslü parantezlerdeki bir dizi öğe ({ ve })
  • Boş köşeli ayraçlar
  • Köşeli parantez içine alınmış bir veya daha fazla virgül

Aşağıdaki örneklerde geçerli dizi bildirimleri gösterilmektedir:

int[] anArrayOfIntegers;
string[,,] threeDimensionalStringArray;

Geçersiz dizi uzunluğu

  • CS0248: Negatif boyutlu bir dizi oluşturulamıyor
  • CS0270: Dizi boyutu değişken bildiriminde belirtilemez ('yeni' ifadeyle başlatmayı deneyin)
  • CS1586: Dizi oluşturma işlemi dizi boyutuna veya dizi başlatıcıya sahip olmalıdır

Geçerli uzunluktaki dizileri oluşturmak için, bildirimde değil başlatma sırasında boyut belirtin. Daha fazla bilgi için Diziler başlığına bakın.

  • Başlatmanın bir parçası olarak, değil bildirimin parçası olarak, dizi uzunluğunu belirtin (CS0270).
  • Dizi boyutları için yalnızca pozitif tamsayılar kullanın (CS0248).
  • tr-TR: new ifadesinde bir boyut veya bir dizi başlatıcı (CS1586) sağlayın.

Aşağıdaki örnekte her iki mekanizma da gösterilmektedir:

int[] fiveIntegers = new int[5];
string[] weekDays = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };

Geçersiz öğe türü

  • CS0611: Dizi öğeleri 'type' türünde olamaz
  • CS0719: Dizi öğeleri statik türde olamaz
  • CS0820: Dizi başlatıcı, örtük olarak yazılmış yerel değişkene atanamaz
  • CS0826: Örtük olarak yazılan dizi için en iyi tür bulunamadı

Doğru öğe türlerine sahip dizileri kullanmak için bu tür kısıtlamalarını izleyin. Daha fazla bilgi için bkz. Örtük olarak yazılan yerel değişkenler ve en iyi ortak tür.

  • ve System.TypedReference gibi System.ArgIterator kısıtlanmış türleri dizi öğesi türleri (CS0611) olarak kullanmayın.
  • Örnekler oluşturulamadığından (static) dizi öğesi türleri olarak sınıfları kullanmayın.
  • Örtük olarak yazılan dizileri bir new ifadeyle (CS0820) başlatın.
  • Örtük olarak yazılan dizi başlatıcıdaki tüm öğelerin en iyi ortak türe (CS0826) sahip olduğundan emin olun.

Aşağıdaki örneklerde örtük olarak yazılan dizilerin nasıl bildirıldığı gösterilmektedir:

var implicitType = new[] { 1, 2, 3 };
        
char c = 'c';
short s1 = 0;
short s2 = -0;
short s3 = 1;
short s4 = -1;

// common type is "int"
var commonType = new[] { s1, s2, s3, s4, c, 1 };

En iyi ortak türü sağlamak için şu tekniklerden birini kullanın:

  • Diziye açık bir tür verin.
  • Tüm dizi öğelerine aynı türü verin.
  • Soruna neden olabilecek öğelerde açık dönüştürmeler sağlayın.

Geçersiz dizi başlatıcı

  • CS0623: Dizi başlatıcılar yalnızca bir değişkende veya alan başlatıcıda kullanılabilir. Bunun yerine yeni bir ifade kullanmayı deneyin.
  • CS0846: İç içe dizi başlatıcı bekleniyor
  • CS1925: Koleksiyon başlatıcı ile 'type' türünde nesne başlatılamıyor.

Bu hatalar geçersiz dizi başlatıcı söz dizimlerini gösterir. Daha fazla bilgi için Diziler başlığına bakın.

Geçerli dizi başlatıcıları oluşturmak için:

  • Dizi başlatıcılarını yalnızca değişken veya alan bildirimlerinde (CS0623) kullanın. Başka bağlamlarda bir new ifade kullanın.
  • Öğeler veya alt diziler ({) çevresinde küme ayraçlarını (} ve ) dengeleyin.
  • Başlatma ifadesinin, iç içe dizi başlatma işlemi içindeki dizi sayısıyla eşleştiğini doğrulayın.
  • Koleksiyon başlatıcılarını dizilerle veya diğer türlerle (CS1925) değil, yalnızca koleksiyon türleriyle kullanın.

Geçersiz koleksiyon oluşturucusu

  • CS9175: İfade ağacı koleksiyon ifadesi içermeyebilir.
  • CS9177: 'CollectionBuilderAttribute' oluşturucu yöntemi dönüş türü, 'betterness' içinde kullanılan koleksiyon türüyle eşleşmelidir.
  • CS9178: 'doğal tür' için bir hedef tür yok.
  • CS9179: Koleksiyon ifade türü, bağımsız değişken olmadan çağrılabilen uygun bir oluşturucuya sahip olmalıdır.
  • CS9180: 'CollectionBuilderAttribute' oluşturucu yöntemi statik bir yöntem olmalıdır.
  • CS9181: 'CollectionBuilderAttribute' oluşturucu yöntemi parametre türü 'ReadOnlySpan<{0}>' parametresiyle eşleşmelidir
  • CS9182: Geçersiz 'CollectionBuilderAttribute'. '{0}' oluşturucu türünde eşleşen '{1}' yöntemi bulunamadı.
  • CS9183: 'CollectionBuilderAttribute' yöntemi dönüş türü, 'type' olarak kullanılabilen soyut olmayan, arabirim olmayan bir tür olmalıdır
  • CS9185: Statik bir tür tür bağımsız değişkeni olarak kullanılamaz.
  • CS9186: CollectionBuilderAttribute Yöntem adı geçersiz.
  • CS9187: Beklenen imzaya sahip erişilebilir bir 'Create' yöntemi bulunamadı: 'ReadOnlySpan<{0}>' türünde tek bir parametreye ve '' dönüş türüne{1} sahip statik bir yöntem.
  • CS9188: 'scoped' koleksiyon ifade türü parametresinde değiştirici olarak kullanılamaz.
  • CS9190: 'BuilderMethod' 'CollectionBuilderAttribute' yöntemi genel olduğundan uygulanabilir değil.
  • CS9192: Satır içi dizi dönüştürmeleri koleksiyon ifadeleriyle kullanılamaz.
  • CS9193: 'argument' bağımsız değişkeni 'ref' anahtar sözcüğüyle geçirilemez.
  • CS9194: 'argument' bağımsız değişkeni 'out' anahtar sözcüğüyle geçirilemez
  • CS9195: 'bağımsız değişken' 'in' anahtar sözcüğüyle geçirilmemelidir
  • CS9196: 'koleksiyon ifadesi' özelliği C# 'version' içinde kullanılamaz. Lütfen 'requiredVersion' veya üzeri dil sürümünü kullanın.
  • CS9197: 'satır içi diziler' özelliği C# 'version' içinde kullanılamaz. Lütfen 'requiredVersion' veya üzeri dil sürümünü kullanın.
  • CS9198: 'ref ve unsafe in async and iterator methods' özelliği C# 'version' içinde kullanılamaz. Lütfen 'requiredVersion' veya üzeri dil sürümünü kullanın.
  • CS9199: 'koleksiyon ifadesi' özelliği C# 'version' sürümünde kullanılamaz. Lütfen 'requiredVersion' veya üzeri dil sürümünü kullanın.
  • CS9202: 'ref readonly parameters' özelliği C# 'version' içinde kullanılamaz. Lütfen 'requiredVersion' veya üzeri dil sürümünü kullanın.
  • CS9208: 'nameof' işleci satır içi dizi erişiminde kullanılamaz.
  • CS9209: Başvuru döndüren 'property' özelliği değer bağımsız değişkeni olarak kullanılamaz.
  • CS9211: İfade 'tür' türünde olmalıdır çünkü referansla atanıyor
  • CS9212: Koleksiyon ifadesi sabit bir deyimdeki değer olarak kullanılamaz
  • CS9217: 'Ref' yerel bir değişken, 'await' veya 'yield' sınırı boyunca korunamaz.
  • CS9218: 'paramName' bir başvuru yapısıdır ve parametre türü olamaz
  • CS9221: 'type' türü, 'member' genel türünde veya yönteminde 'parameter' parametresi olarak kullanmak için başvuru yapılarına izin veren bir başvuru yapısı veya tür parametresi olmayabilir
  • CS9223: 'başv' alanlarını içeren bir yapı koleksiyon ifadesinde kullanılamaz.
  • CS9228: Başvuru yapısının değişken olmayan bildirimine izin verilmiyor
  • CS9232: Kısmi yöntem bildirimlerinin imza farklılıkları vardır.
  • CS9233: 'dosya' değiştiricisi yalnızca derleme ünitesinde en üst düzeyde tanımlanan türlerde kullanılabilir

Koleksiyon oluşturucu öznitelikleriyle koleksiyon ifadelerini doğru oluşturmak için bu gereksinimleri izleyin. Daha fazla bilgi için bkz . Koleksiyon ifadeleri.

  • Hedef türün (foreach) destekleyen bir yineleme türüne sahip olduğundan emin olun.
  • Koleksiyon oluşturucu türleri (CS9185) olarak genel türler kullanmayın.
  • içinde CollectionBuilderAttribute belirtilen yöntem adının geçerli olduğunu doğrulayın (CS9186).
  • Yalnızca gerekli imzayla eşleşen statik yöntemlerle uygulayınCollectionBuilderAttribute: koleksiyon türünü döndür ve öğe türüyle eşleşen bir ReadOnlySpan<T> parametre T alın (CS9180, CS9181, CS9182, CS9183, CS9187, CS9190).
  • Dönüş türünün ne soyut ne de bir arabirim (CS9177, CS9183) olmadığından emin olun.
  • Koleksiyon ifadelerinde başvuru alanlarıyla başvuru yapılarını veya türlerini kullanmayın (CS9218, CS9221, CS9223, CS9228).
  • İfade ağaçlarında koleksiyon ifadelerini kullanmaktan kaçının (CS9175).
  • Koleksiyon ifadeleri ve ilgili özellikler için doğru dil sürümünü kullanın (CS9196, CS9197, CS9198, CS9199, CS9202).

Ortak dil özellikleri uyarıları

  • CS3007: Yalnızca adsız dizi türleriyle farklılık gösteren aşırı yüklenmiş 'method' yöntemi CLS uyumlu değil
  • CS3016: Öznitelik bağımsız değişkenleri olarak diziler CLS uyumlu değil

Dizilerle CLS uyumlu kod yazmak için bu yönergeleri izleyin. Daha fazla bilgi için bkz. Dil bağımsızlığı.

  • Yalnızca dizi öğesi türlerinde (CS3007) farklı aşırı yüklenmiş yöntemler oluşturmayın.
  • Dizileri öznitelik bağımsız değişkenleri (CS3016) olarak kullanmayın.

CS3007, pürüzlü bir dizi alan aşırı yüklenmiş bir yönteminiz varsa oluşur ve yöntem imzaları arasındaki tek fark dizinin öğe türüdür. Bu hatayı önlemek için, pürüzlü dizi yerine dikdörtgen bir dizi kullanmayı göz önünde bulundurun veya CLS Uyumluluğu gerekli değilse özniteliğini CLSCompliantAttribute kaldırın. CLS Uyumluluğu hakkında daha fazla bilgi için bkz . Dil bağımsızlığı ve dilden bağımsız bileşenler.

CS3016, bir diziyi bir özniteliğe geçirmek için Ortak Dil Belirtimi (CLS) ile uyumlu olmadığını gösterir. CLS uyumluluğu hakkında daha fazla bilgi için bkz . Dil bağımsızlığı ve dilden bağımsız bileşenler.