Nasıl yapılır: Otomatik bağlama yeniden yönlendirmesini etkinleştirme ve devre dışı bırakma

Visual Studio'da .NET Framework 4.5.1 ve sonraki sürümleri hedefleyen masaüstü uygulamalarını derlediğinizde, derleme birleştirmeyi geçersiz kılmak için bağlama yeniden yönlendirmeleri otomatik olarak uygulama yapılandırma dosyasına eklenebilir. Uygulamanız veya bileşenleri, aynı derlemenin birden çok sürümüne başvurursa, uygulamanızın yapılandırma dosyasında bağlama yeniden yönlendirmelerini el ile belirtseniz de, bağlama yeniden yönlendirmeleri eklenir. Otomatik bağlama yeniden yönlendirme özelliği, .NET Framework 4.5.1 veya sonraki bir sürümü hedefleyen masaüstü uygulamalarını etkiler. Otomatik olarak oluşturulan bağlama yeniden yönlendirmesini açıkça etkinleştirmediyseniz veya devre dışı bırakmadıysanız ve var olan bir projeyi yükseltirseniz özellik otomatik olarak etkinleştirilir.

Web uygulamaları için, Visual Studio bağlama çakışması ile karşılaştığında, çakışmayı çözmek için bir bağlama yeniden yönlendirmesi eklemeniz istenir.

.NET Framework'ün önceki sürümlerini (4.5 ve öncesi) hedefleyen mevcut uygulamalar için otomatik bağlama yeniden yönlendirmesini etkinleştirebilirsiniz. Bağlama yeniden yönlendirmelerini el ile yazmak istiyorsanız bu özelliği devre dışı bırakabilirsiniz.

Önemli

Visual Studio 2022'den başlayarak, bu sürümler artık desteklenmediğinden, Visual Studio artık .NET Framework 4.0 - 4.5.1 için .NET Framework bileşenleri içermez. Visual Studio 2022 ve sonraki sürümleri .NET Framework 4.5.1 aracılığıyla .NET Framework 4.0'ı hedefleyen uygulamalar oluşturamaz. Bu uygulamaları oluşturmaya devam etmek için Visual Studio 2019 veya önceki bir sürümü kullanabilirsiniz.

Masaüstü uygulamalarında otomatik bağlama yeniden yönlendirmelerini devre dışı bırakma

.NET Framework 4.5.1 ve sonraki sürümleri hedefleyen Windows masaüstü uygulamaları için otomatik bağlama yeniden yönlendirmeleri varsayılan olarak etkinleştirilir. Bağlama yeniden yönlendirmeleri, uygulama derlendiğinde çıkış yapılandırması (app.config) dosyasına eklenir. Yeniden yönlendirmeler, aksi takdirde gerçekleşebilecek derleme birleştirmeyi geçersiz kılar. Kaynak app.config dosyası değiştirilmez. Uygulamanın proje dosyasını değiştirerek veya Visual Studio'da projenin özelliklerindeki onay kutusunun seçimini kaldırarak bu özelliği devre dışı bırakabilirsiniz.

Proje özellikleri aracılığıyla devre dışı bırakma

Visual Studio 2017 sürüm 15.7 veya sonraki bir sürümüne sahipseniz, projenin özellik sayfalarında otomatik olarak oluşturulan bağlama yeniden yönlendirmelerini devre dışı bırakabilirsiniz.

  1. Çözüm Gezgini'da projeye sağ tıklayın ve Özellikler'i seçin.

  2. Uygulama sayfasında Bağlama yeniden yönlendirmelerini otomatik olarak oluştur seçeneğinin işaretini kaldırın.

    Seçeneğini görmüyorsanız, proje dosyasındaki özelliği el ile devre dışı bırakmanız gerekir.

  3. Değişikliği kaydetmek için Ctrl+S tuşuna basın.

Proje dosyasında el ile devre dışı bırakma

  1. Aşağıdaki yöntemlerden birini kullanarak düzenlemek üzere proje dosyasını açın:

    • Visual Studio'da, Çözüm Gezgini'da projeyi seçin ve ardından kısayol menüsünden klasörü Dosya Gezgini aç'ı seçin. Dosya Gezgini proje (.csproj veya .vbproj) dosyasını bulun ve Not Defteri açın.
    • Visual Studio'da Çözüm Gezgini projeye sağ tıklayın ve Projeyi Kaldır'ı seçin. Kaldırılan projeye yeniden sağ tıklayın ve ardından Düzenle [projectname.csproj] öğesini seçin.
  2. Proje dosyasında aşağıdaki özellik girdisini bulun:

    <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
    
  3. olarak falsedeğiştirintrue:

    <AutoGenerateBindingRedirects>false</AutoGenerateBindingRedirects>
    

Otomatik bağlama yeniden yönlendirmelerini el ile etkinleştirme

.NET Framework'ün eski sürümlerini hedefleyen mevcut uygulamalarda veya otomatik olarak yeniden yönlendirme eklemeniz istenmediği durumlarda otomatik bağlama yeniden yönlendirmelerini etkinleştirebilirsiniz. .NET Framework'ün daha yeni bir sürümünü hedeflediyseniz ancak otomatik olarak yeniden yönlendirme eklemeniz istenmiyorsa, derlemeleri yeniden eşlemenizi öneren bir derleme çıktısı alırsınız.

  1. Aşağıdaki yöntemlerden birini kullanarak düzenlemek üzere proje dosyasını açın:

    • Visual Studio'da, Çözüm Gezgini'da projeyi seçin ve ardından kısayol menüsünden klasörü Dosya Gezgini aç'ı seçin. Dosya Gezgini proje (.csproj veya .vbproj) dosyasını bulun ve Not Defteri açın.
    • Visual Studio'da Çözüm Gezgini projeye sağ tıklayın ve Projeyi Kaldır'ı seçin. Kaldırılan projeye yeniden sağ tıklayın ve ardından Düzenle [projectname.csproj] öğesini seçin.
  2. İlk yapılandırma özellik grubuna (PropertyGroup> etiketi altında) aşağıdaki öğeyi <ekleyin:

    <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
    

    Aşağıda öğesinin eklendiği örnek bir proje dosyası gösterilmektedir:

    <?xml version="1.0" encoding="utf-8"?>
    <Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
      <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
      <PropertyGroup>
        <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
        <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
        <ProjectGuid>{123334}</ProjectGuid>
        ...
        <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
      </PropertyGroup>
      ...
    </Project>
    
  3. Uygulamalarınızı derleyin.

Web uygulamalarında otomatik bağlama yeniden yönlendirmelerini etkinleştirme

Otomatik bağlama yeniden yönlendirmeleri, web uygulamaları için farklı şekilde uygulanır. Web uygulamaları için kaynak yapılandırma (web.config) dosyasının değiştirilmesi gerektiğinden, bağlama yeniden yönlendirmeleri yapılandırma dosyasına otomatik olarak eklenmez. Ancak Visual Studio, bağlama çakışmalarını size bildirir ve çakışmaları çözümlemek için bağlama yeniden yönlendirmeleri ekleyebilirsiniz. Her zaman bağlama yeniden yönlendirmeleri eklemeniz istendiğinden, bu özelliği bir web uygulaması için açıkça devre dışı bırakmanız gerekmez.

Web.config dosyasına bağlama yeniden yönlendirmeleri eklemek için:

  1. Visual Studio'da uygulamayı derleyin ve yapı uyarılarını denetleyin.

    Build warning for assembly reference conflicts.

  2. Derleme bağlama çakışmaları varsa bir uyarı görüntülenir. Uyarıya çift tıklayın veya uyarıyı seçin ve Enter tuşuna basın.

    Kaynak web.config dosyasına gerekli bağlama yeniden yönlendirmelerini otomatik olarak eklemenize olanak tanıyan bir iletişim kutusu görüntülenir.

    Binding redirect permission dialog.

Ayrıca bkz.