ICE69
ICE69, [$componentkey] formunun biçimlendirilmiş dizedeki tüm alt dizelerinin bileşenlere çapraz başvuruda bulunamadısını denetler. Biçimlendirilmiş bir dizenin [$componentkey] özelliği tablolarınızın Component_ sütununda depolanan bileşen dışında bir bileşene başvurduğunda bileşenler arası başvuru oluşur.
Bileşenler arası başvuruyla ilgili sorunlar, biçimlendirilmiş dizelerinin değerlendirilme biçiminden kaynaklanmıştır. [$componentkey] özelliğiyle başvuruda bulunılan bileşen zaten yüklüyse ve geçerli yükleme sırasında değiştirilmiyorsa (örneğin, yeniden yükleniyor, kaynağa taşınıyor vb.), [$componentkey] içindeki bileşenin eylem durumu null olduğundan [$componentkey] ifadesi null olarak değerlendirilir. Yükseltme ve onarım işlemleri sırasında benzer sorunlar oluşabilir.
Sonuç
ICE69, biçimlendirilmiş bir dizesi içindeki bir [$componentkey] alt dize başka bir özellikteki bir bileşene çapraz başvuruda bulunursa hata döndürür. ICE69, biçimlendirilmiş bir dize içindeki [$componentkey] alt dize aynı özellikteki bir bileşene çapraz başvuruda bulunursa bir uyarı döndürür. (Bu eşlemeyi belirlemek için FeatureComponents tablosu kullanılır. Uyarı için aynı özelliğe eşlenmelidir. Üst özelliklerdeki bileşenlere başvurmak veya alt özelliklerdeki bileşenlere başvurmak hata olarak kabul edilir.)
ICE69, biçimli dizesindeki [#FileKey] alt dizesi, Dosya tablosunda aynı bileşene ait olarak belirtilmeyen bir dosyaya başvuruda bulunursa bir hata bildirir.
Örnek
ICE69, gösterilen örnekler için aşağıdakileri raporlar.
WARNING: "Mismatched component reference. Entry 'Test' of the Shortcut table belongs to component 'QuickTest'. However, the formatted string in column 'Argument' references component 'Test'. Components are in the same feature."
ERROR: "Mismatched component reference. Entry 'Shortcut2' of the Shortcut table belongs to component 'QuickTest'. However, the formatted string in column 'Argument' references component 'Test2'. Components are not in the same feature."
Bu hatayı düzeltmek için bileşenlere çapraz başvuruda kullanmayın. [$componentkey] öğesini kısayolun bileşeniyle eşleşecek şekilde değiştirin.
Kısayol Tablosu (kısmi)
Kısayol | Parça_ | Tartışma |
---|---|---|
Test | QuickTest | -v [$Test] |
Kısayol2 | QuickTest | [$Test 2] |
Fiil ve Uzantısı tabloları, Fiil tablosunun bir bileşene ait bir uzantıya başvurması için özel durumlardır. Ancak uzantı tablosunun birincil anahtarı Uzantı ve Component_ sütunlarından oluştuğundan Uzantı birden çok bileşene ait olabilir. Mantıksal olarak aşağıdaki duruma sahip olabilirsiniz.
Uzantı | Fiil_ | Tartışma |
---|---|---|
Tst | açık | -v [$comp 1][$comp 2] |
Uzantı Tablosu (kısmi)
Uzantı | Parça_ |
---|---|
Tst | comp1 |
Tst | comp2 |
Özellik_ | Parça_ |
---|---|
Özellik1 | QuickTest |
Özellik1 | Test |
Özellik2 | Test2 |
Bu durumda, [$componentkey] özelliklerinden en az birinin null olmayan bir değere değerlendirdiğinden emin olmanız gerekir. Ancak, yukarıdaki örnekte fiil tablosunun Bağımsız Değişken sütunundaki ([$comp 1] ve [$comp 2] her [$componentkey] özelliği, fiil ile ilişkilendirilmiş uzantıyla birlikte gelen olası bir bileşene başvurmalıdır. [$comp 3] gibi bir başvuru ICE69'dan bir uyarıyla sonuçlanır.
AppId tablosu Fiil tablosuna benzer bir duruma sahiptir. Bileşen başvurusu için Sınıf tablosu kullanır. Bu durumda AppId tablosu, Verb-Extension doğrulamasıyla aynı şekilde doğrulanır (şimdi AppId-Class).
Sınıf tablosunun Bağımsız Değişken sütunu, Kısayolu, Kayıt Defterive benzer tablolar gibi doğrulanır.
Yürütme sırasında kullanılan tablo (yalnızca bulunursa)
İlgili konular