ASP.Net Web Uygulaması Yapılandırma Ekleme Dönüşümü Gri Renkli


89

Çözümüme mevcut bir ASP.Net web uygulaması projesini ekledim. Standart hata ayıklama ve sürüm yapılandırmalarına ek olarak, bu çözümün iki özel yapılandırması da vardır: SAT ve UAT. Yeni web uygulaması için Web.Config'e sağ tıklandığında içerik menüsü gösterilir, ancak "Yapılandırma Dönüşümü Ekle" seçeneği grileşir.

Kaybettim. Yeni proje bir web uygulamasıdır. Configuration Manager, bu proje için iki özel yapılandırmayı göstermez, ancak diğer projeler için gösterir. Proje, çözüm dosyasında doğru girişlere sahip görünüyor.

Düşünceler?

Yanıtlar:


117

Öncelikle Configuration Manager'da konfigürasyonları tanımlamalısınız. Yapılandırma Yöneticisini açtığınızdan emin olmak için, şuraya giderek erişebilirsiniz: Yapı-> Yapılandırma Yöneticisi

Gelen Solution konfigürasyon açılır seçin <New...>. Ekledikten sonra, "Yapılandırma Dönüşümü Ekle" seçeneğine sahip olacaksınız.

Çözüm dosyanızı doğrudan düzenlemeyin. Sadece baş ağrısına neden olur.


6
Duh. Bunu daha önce denedim, ancak "oluştur" kutusunun işaretini kaldırmayı başaramadım, bu yüzden "kopya" olarak başarısız oluyordu. "Oluştur" kutusunun işaretini kaldırır kaldırmaz işe yaradı.
paulv7260

@maplemale Aynı burada, seçenek hala gri
Anders

Üzgünüm, bunu nasıl çalıştırdığımı hatırlayamıyorum. Sln dosyasını doğrudan hacklemiş olabilirim, Jeremy'nin cevabının aksine, bu bazen sadece zamana uygun tek seçenek olabilir. VS2015'e yükselttiğimden beri bu sorunu yaşamadım.
maplemale

2
Çözüm ve Proje konfigürasyonları farklı! Bu dönüşümü kullanmadan önce belirli bir projede bir konfigürasyon oluşturmanız gerekir. Yapılandırmayı tüm projelerde bir defada oluşturmak için "Yeni proje yapılandırmaları oluştur" seçeneğini işaretleyin veya @ paulv7260'ın yaptığı gibi tek tek yapın.
Patrick

1
Hala griyse, web projenizin çözüm yapılandırmasının adıyla eşleşen bir yapı yapılandırmasına sahip olduğundan ve seçildiğinden emin olun.
jmatthias

45

PublishProfiles ile çalışırken, benim için cevap, ilgili pubxmldosyaya (proje klasörü Propertiesalt klasöründe bulunan) sağ tıklamak PublishProfilesve ardından seçmek oldu Add Config Transform. Yöneticiye gerek yok;).


Bu çözüm benim için çok daha iyi çalışıyor çünkü sadece bu dönüşümün eklenmesini istiyorum, başka bir şey değil. Yeni aktif çözüm yapılandırmasının çözümdeki tüm projeler üzerinde etkisi var, bu benim durumumla ilgili değil. Teşekkürler!
Ben

Mükemmel. Şu anda Visual Studio 2015'te düzenlemekte olduğum eski Web Forms projemde çalışıyor. Bayıldım. Teşekkür ederim.
bkwdesign

5
VS 2015 üzerinde test edildi ve çalışılıyor. Bununla birlikte, "Add Config Transform" un neden gri renkte
göründüğünü

20

Benim durumumda, Visual Studio 2015'te bir proje şablonuna dayalı yeni bir çözüm oluşturduğumda, Config Transform Ekle grileşti - ancak farklı bir nedenden dolayı:

"Tüm dosyaları göster" üzerine tıklamak , dosyaların zaten orada olduğunu ortaya çıkardı - yalnızca gizli. Bu nedenle, düğme griydi (çünkü zaten orada oldukları için onları eklemeye gerek yok).

  1. "Tüm dosyaları göster" simgesini tıklayın:
    görüntü açıklamasını buraya girin

  2. Şimdi "Web.config" i genişletebilirsiniz:
    görüntü açıklamasını buraya girin

  3. Açmak ve düzenlemek için dönüştürme dosyalarından herhangi birine ( Web.Debug.configveya Web.Release.config) çift ​​tıklayın .

Notlar:

  • Ek bir konfigürasyon eklemek istemedim, sadece Debug ve Release'ı kullanın . Bir tane oluşturursanız, onu seçin ve dönüştürme dosyası henüz mevcut değilse, o zaman Bağlam menüsü öğesi Yapılandırma Dönüştürme Ekle etkindir ve grileşmez.

  • Ek yapılandırma dönüştürme dosyaları oluşturmak istiyorsanız , Visual Studio'da yapılandırma dönüştürmelerinin yapılandırmalarla ilişkilendirildiğini unutmayın. Başka bir dönüşüm eklemek için önce yeni bir konfigürasyon eklemeniz gerekir. Başka bir tane eklemek için şunları yapın: Yapılandırma yöneticisi aracılığıyla (Hata Ayıkla veya Yayınla'yı seçebileceğiniz açılır menü), önce yeni bir yapılandırma ekleyin, örneğin myNewConfig. Ardından myNewConfig'i seçin. Şimdi Çözüm Gezgini'nde Web.config'i seçin, sağ tıklayın ve "Yapılandırma Dönüşümü Ekle" bağlam menüsünde seçin - Web.myNewConfig.config oluşturacaktır. Bir kez var olduğunda, bağlam menüsü tekrar gri olacaktır çünkü VS konfigürasyon başına yalnızca bir dönüşüme izin verir.


Benim için de durum buydu. Yapılandırma dönüştürme dosyalarının görünür kalmasını istedim, bu yüzden <DependentUpon>Web.config</DependentUpon>proje dosyasında yorum yaptım . Dönüşümler hala beklendiği gibi çalışıyor.
Ethan

Yeni yapılandırma dönüşümlerini nasıl ekleyebilirim?
Reshma

@Reshma - Visual Studio'da, yapılandırma dönüşümleri yapılandırmalarla ilişkilendirilir. Yapılandırma yöneticisi aracılığıyla (Hata Ayıkla veya Yayınla seçimini yapabileceğiniz açılır menü), önce yeni bir yapılandırma ekleyin, örneğin myNewConfig. Ardından myNewConfig'i seçin. Şimdi Web.config'i seçin, sağ tıklayın ve bağlam menüsünde "Config Transform Ekle" öğesini seçin - Web.myNewConfig.config dosyasını oluşturacaktır.
Matt

Bunu Matt yaptım ve bir yapılandırma dosyası ekleyebildim ancak başka bir yapılandırma dosyası eklemeye çalışıyorum ve şimdi yine "Yapılandırma Dönüşümü ekle" gri renkte görünüyor. Ayrıca bir sonraki yapılandırma dosyası için yeni yapılandırma dosyası oluşturdum
Reshma

1
@Reshma - Bu doğru, çünkü yapılandırma başına yalnızca bir tanesine sahip olabilirsiniz. Başka bir tane almak için ekstra bir yapılandırma ekleyin, örneğin myNewConfig2. Ardından myNewConfig2'yi seçin ve tekrar deneyin. Bu sefer gri olmamalı - seçin. Not: Bu yapılandırma için bir yapılandırma dosyası var olur olmaz gri görünecektir.
Matt

2

Bunu iki şeyin farkına vararak çözdüm:

  1. Bir yoktur Çözüm düzey yapılandırma ve orada Proje seviye konfigürasyonları. Web.MyConfigName.config, proje düzeyindeki yapılandırmalara göre oluşturulur .
  2. Görünüşe göre Visual Studio 2017 Configuration Manager, (gizli) obj klasöründen hangi yapılandırmaların ekleneceğini temel alıyor. Proje için obj klasörünün silinmesi ve yeniden oluşturulması, projeyi eklediğiniz konfigürasyonlarla güncelleyecektir.

"Yapılandırma dönüşümü ekle" seçeneğini kullanılabilir hale getirmek için şu adımları izleyin:

  1. Gizli Dosyaları Göstermeyi etkinleştirdiğinizden emin olun
  2. Çözüm için yapılandırma yöneticisini açın
  3. İlgili Çözüm yapılandırmasını seçin, ardından projenizin yanındaki açılır menüden istediğiniz Proje yapılandırmalarını seçin <New..>veya <Edit..>ekleyin, kaldırın veya düzenleyin .
  4. Projenizdeki obj klasörünü silin. Yeniden oluştur. Proje ve çözüm dosyalarınızdaki değişiklikleri kaydettiğinizden emin olun. Görsel stüdyosunu da yeniden başlattım çünkü neden olmasın. Tüm proje yapılandırmalarınızı obj klasörünüzde klasörler olarak gördüğünüzü doğrulayın.
  5. Web.config'e sağ tıklayın ve yapılandırma dönüşümünüzü ekleyin.

Umarım birine yardımcı olur. :)


1

Bu çalışmayı başlatmak için csproj dosyama yeni özellik grupları eklemem gerekiyordu.

Yapılandırma Dönüşümü Ekle devre dışı bırakıldı.

csproj'uma aşağıdaki XML'i ekledim ve projeyi yeniden yükledim. sonra Yapılandırma Dönüşümü Ekle kullanılabilirdi. seçildikten sonra ekleme dönüşümlerim eklendi

<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'IAT_CMCD|AnyCPU'">
    <DebugType>pdbonly</DebugType>
    <Optimize>true</Optimize>
    <OutputPath>bin\</OutputPath>
    <DefineConstants>TRACE</DefineConstants>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'UAT_CM|AnyCPU'">
    <DebugType>pdbonly</DebugType>
    <Optimize>true</Optimize>
    <OutputPath>bin\</OutputPath>
    <DefineConstants>TRACE</DefineConstants>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
  </PropertyGroup>

1

"Yapılandırma Dönüşümü Ekle" seçeneği nasıl etkinleştirilir. Lütfen aşağıdaki adımları izleyin. Adım 1: Çözüm yapılandırmasına gidin (Takımın Altında) Çözüm yapılandırmasına gidin (Takımın Altında)

Adım 2: Configuration Manager üzerine tıklayın Konfigürasyon yöneticisine tıklayın

Adım 3: Etkin çözüm yapılandırma penceresinden Yeni'yi seçin Etkin çözüm yapılandırma penceresinden Yeni'yi seçin

Adım 4: Şimdi Üretim / Hazırlama gibi yeni öğenize anlamlı bir ad verin ve "Yayın" seçeneğinden kopya ayarını seçin. Varsayılan olarak gelmiyorsa, onay kutusunu işaretlediğinizden emin olun ve Tamam'ı tıklayın. Şimdi Üretim / Aşama gibi yeni öğenize anlamlı bir ad verin

Adım 5: Şimdi çözüm gezgininize geri dönün ve Web.Config dosyanıza sağ tıklayın. Yapılandırma Dönüşümü Ekle şimdi etkinleştirildi

Hola! Yapılandırma Dönüşümü Ekle şimdi etkinleştirildi. :)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.