Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir: Visual Studio
Bu konu başlığında, başvuru sorunları nedeniyle oluşabilecek MSBuild hataları ve bu hataları nasıl giderebileceğiniz açıklanmaktadır.
.NET'in farklı bir sürümünü hedefleyen bir projeye veya derlemeye başvurma
.NET'in farklı sürümlerini hedefleyen projelere veya derlemelere başvuran uygulamalar oluşturabilirsiniz. Örneğin, .NET 6'yı hedefleyen ancak .NET Core 3.1'i hedefleyen bir derlemeye başvuran bir uygulama oluşturabilirsiniz. Ancak, .NET'in önceki bir sürümünü hedefleyen bir projede .NET 6'yı hedefleyen bir proje veya derlemeye başvuru ayarlayamazsınız. Bu örnekte görebileceğiniz hatanın bir örneği aşağıda verilmişti:
error NU1201: Project ClassLibrary-NET6 is not compatible with netcoreapp3.1 (.NETCoreApp,Version=v3.1). Project ClassLibrary-NET6 supports: net6.0 (.NETCoreApp,Version=v6.0)
2>Done building project "ClassLibrary-NET31.csproj" -- FAILED.
Hatayı çözmek için uygulamanızın başvurduğunu projeler veya derlemeler tarafından hedeflenen sürümle uyumlu bir .NET sürümünü hedeflediğinden emin olun.
Projeyi farklı bir .NET sürümüne yeniden hedefleme
Uygulamanız için .NET'in hedef sürümünü değiştirirseniz, Visual Studio bazı başvuruları değiştirir, ancak bazı başvuruları el ile güncelleştirmeniz gerekebilir. Örneğin, bir uygulamayı .NET Core 3.1 hedefine değiştirirseniz ve bu uygulamanın .NET 6 kullanan başvuruları, kaynakları veya ayarları varsa, daha önce bahsedilen hatalardan biri oluşabilir.
app.config dosyasındaki başvuruları güncelleştirme
.NET Framework uygulamalarında uygulama ayarlarına geçici bir çözüm bulmak için şu adımları izleyin:
- Çözüm Gezgini'i açın.
- Tüm Dosyaları Göster'i seçin ve visual studio'nun XML düzenleyicisinde app.config dosyasını düzenleyin.
- Ayarlardaki sürümü uygun .NET sürümüyle eşleşecek şekilde değiştirin. Örneğin, sürüm ayarını 4.0.0.0 olan 2.0.0.0 olarak değiştirebilirsiniz.
Benzer şekilde, kaynak ekleyen bir uygulama için şu adımları izleyin:
- Çözüm Gezgini'i açın.
- Tüm Dosyaları Göster'i seçin.
- Projem 'i (Visual Basic) veya Özellikler'i (C#) genişletin ve ardından Resources.resx dosyasını Visual Studio'nun XML düzenleyicisinde düzenleyin.
- Sürüm ayarını 4.0.0.0 olan 2.0.0.0 olarak değiştirin.
Kaynakları güncelleştirme
Uygulamanızda simgeler, bit eşlemler veya veri bağlantı dizesi gibi ayarlar gibi kaynaklar varsa, Proje Tasarımcısı'nın Ayarlar sayfasındaki tüm öğeleri kaldırıp gerekli ayarları okuyarak da hatayı çözebilirsiniz.
Projeyi farklı bir .NET sürümüne yeniden hedeflediğiniz için başvurular çözümlenmez
Bir projeyi farklı bir .NET sürümüne yeniden hedeflerseniz, başvurularınız bazı durumlarda düzgün çözümlenmeyebilir. Derlemelere yönelik açık tam başvurular genellikle bu soruna neden olur, ancak çözmeyen başvuruları kaldırıp projeye geri ekleyerek sorunu çözebilirsiniz. Alternatif olarak, başvuruları değiştirmek için proje dosyasını düzenleyebilirsiniz. İlk olarak, aşağıdaki formun başvurularını kaldırın:
<Reference Include="System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL" />
Ardından, bunları basit bir biçimle değiştirin:
<Reference Include="System.ServiceModel" />
Not
Projenizi kapatıp yeniden açtığınızda, tüm başvuruların doğru çözümlenmesi için projeyi yeniden oluşturmanız gerekir.