Proje ve çözüm yapılandırmaları

Projelerinizi farklı ayarlarla oluşturmanız ve çözüm yapılandırmalarının proje yapılandırmalarını çözüm düzeyinde düzenlemeniz gerektiğinde proje yapılandırmalarına ihtiyacınız vardır. Hata Ayıklama ve Sürüm yapılandırmaları hem çözüm yapılandırmaları hem de ilgili proje yapılandırmalarıdır.

Çözüm yapılandırması, proje yapılandırmalarının kapsayıcısı gibidir. Gerçekten tek başına herhangi bir ayar içermez. Proje yapılandırması ve hedef platform (makine mimarisi), derleyici seçenekleri gibi gerçek ayarlarla doğrudan ilişkilendirilir.

Bir çözüm yapılandırması etkindir ve IDE'nin üst kısmındaki komut çubuğunda gösterilir.

Ana Visual Studio araç çubuğunda etkin yapılandırmayı gösteren ekran görüntüsü.

Ana Visual Studio araç çubuğunda etkin yapılandırmayı gösteren ekran görüntüsü.

Proje yapılandırması ve yerleşik çıkış dosyalarının depolandığı platform denetimi. Normalde Visual Studio projenizi oluştururken, çıkış etkin yapılandırmayla (örneğin, bin/Debug/x86) adlı bir proje alt klasörüne yerleştirilir, ancak bunu değiştirmek istiyorsanız bkz. Derleme çıktı dizinini değiştirme.

Çözüm ve proje düzeyinde kendi yapılandırmalarınızı oluşturabilirsiniz. Çözüm yapılandırması, yapılandırma etkin olduğunda derlemeye hangi projelerin dahil olduğunu belirler. Yalnızca etkin çözüm yapılandırmasında belirtilen projeler oluşturulur. Configuration Manager'da birden çok hedef platform seçilirse, bu platforma uygulanan tüm projeler oluşturulur. Proje yapılandırması, projeyi oluştururken hangi derleme ayarlarının ve derleyici seçeneklerinin kullanılacağını belirler.

Yapılandırma oluşturmak, seçmek, değiştirmek veya silmek için Configuration Managerkullanabilirsiniz. Açmak için menü çubuğunda Build>Configuration Manageröğesini seçin veya arama kutusuna Yapılandırma yazın. Yapılandırma seçmek veya Configuration Manager'ı açmak için Standart araç çubuğundaki Çözüm Yapılandırmaları listesini de kullanabilirsiniz.

Configuration Manager iletişim kutusunun ekran görüntüsü.

Configuration Manager iletişim kutusunun ekran görüntüsü.

Not

Araç çubuğunda çözüm yapılandırma ayarlarını bulamıyorsanız ve Configuration Managererişemiyorsanız, bunun nedeni Visual Basic geliştirme ayarlarını kullanmanız olabilir. Daha fazla bilgi için bkz. Visual Basic geliştirici ayarları uygulanmış yapılandırmaları yönetme.

Varsayılan olarak Hata Ayıklama ve Yayın yapılandırmaları Visual Studio şablonları kullanılarak oluşturulan projelere eklenir. Hata Ayıklama yapılandırması bir uygulamanın hata ayıklamasını destekler ve Sürüm yapılandırması uygulamanın dağıtılabilir bir sürümünü oluşturur. Daha fazla bilgi için bkz. Hata ayıklama ve sürüm yapılandırmalarını ayarlama. Özel çözüm yapılandırmaları ve proje yapılandırmaları da oluşturabilirsiniz. Daha fazla bilgi için bkz. Yapılandırmaları oluşturma ve düzenleme.

Neden hem çözüm yapılandırmaları hem de proje yapılandırmaları var?

Herhangi bir çözüm için, bu çözümdeki projelerin çözümle aynı yapılandırmaya sahip olması gerekmez. Örneğin, hata ayıklama çözümü yapılandırması tüm projelerin Hata Ayıklama yapılandırmasını kullanmasını gerektirmez.

Büyük bir paylaşılan çözümün parçası olan ancak bu çözümde bir veya daha fazla yakından ilişkili projeniz olan bir geliştirici olduğunuzu varsayalım. Projeleriniz için bir Hata ayıklama yapılandırması, ancak bu çözümdeki diğer tüm projeler için bir Yayın yapılandırması kullanmak isteyebilirsiniz. Bu senaryoyu desteklemek için Hata ayıklama çözümü yapılandırmasını yalnızca bazı projelerde hata ayıklama proje yapılandırmasını kullanacak şekilde ve diğer her şey için Sürüm projesi yapılandırmasını kullanacak şekilde ayarlayabilirsiniz. Bu, bu projeler için performans ve dosya boyutları açısından önemli ölçüde daha az ek yük anlamına gelebilir ve etkin olarak hata ayıklamadığınız projelerde Yayın modunda çalıştırarak müşteri deneyimine daha yakın bir şekilde çalıştırabilir ve yine de Hata Ayıklama ve Yayın derlemeleri arasında işiniz için anlamlı bir şekilde geçiş yapma olanağını koruyabilirsiniz.

Çözüm yapılandırmaları

Çözüm yapılandırması, çözümdeki projelerin nasıl oluşturulup dağıtılacağı belirtir. Bir çözüm yapılandırmasını değiştirmek veya yenisini tanımlamak için Yapılandırma Yöneticisiiçinde, Etkin çözüm yapılandırmasıaltında Düzenle veya Yeniseçeneklerini seçin.

Bir çözüm yapılandırmasındaki Project bağlamları kutusundaki her giriş çözümdeki bir projeyi temsil eder. Etkin çözüm yapılandırması ve Etkin çözüm platformuher birleşimi için her projenin nasıl kullanılacağını ayarlayabilirsiniz.

Yeni bir çözüm yapılandırması tanımlayıp Yeni proje yapılandırmaları oluştur onay kutusunu seçtiğinizde, Visual Studio tüm projelerde yeni bir proje yapılandırması oluşturur. Benzer şekilde, yeni bir çözüm platformu tanımlayıp yeni proje platformları oluştur onay kutusunu seçtiğinizde, Visual Studio tüm projelerde yeni platform seçeneğini oluşturur. Ayrıca, yeni bir platformu hedefleyen bir proje eklerseniz, Visual Studio bu platformu çözüm platformları listesine ekler ve platformu tüm projelerde bir seçenek olarak kullanılabilir hale getirir. Platformların gerekli olmadığı veya bazı projeler tarafından desteklenmediği durumlar için her projenin ayarlarını değiştirebilirsiniz.

Etkin çözüm yapılandırması, IDE bağlamı da sağlar. Örneğin, bir proje üzerinde çalışıyorsanız ve yapılandırma bunun mobil cihaz için oluşturulacağını belirtiyorsa, Araç Kutusu yalnızca mobil cihaz projesinde kullanılabilecek öğeleri görüntüler.

Proje yapılandırmaları

Bir projenin hedeflediği yapılandırma ve platform, derleme yapılırken kullanılacak derleme ayarlarını ve derleyici seçeneklerini belirlemek için birlikte kullanılır. Bir proje her yapılandırma ve platform bileşimi için farklı ayarlara sahip olabilir. Bir projenin özelliklerini değiştirmek için, Çözüm Gezgini'nde projenin kısayol menüsünü açın ve Özellikleröğesini seçin. Proje tasarımcısının Derleme sekmesinin üst kısmında, derleme ayarlarını düzenlemek için etkin bir yapılandırma seçin.

Proje tasarımcısı yapılandırmalarının ekran görüntüsü.

Her yapılandırma için önceden tanımlanmış sabitler, kendi yapılandırmanızı girebileceğiniz metin kutusunun altında gösterilir. Bu önceden tanımlanmış sabitler, projenizin kullandığı SDK tarafından tanımlanır. Bu özelliklerin nerede tanımlandığını görmek için MSBuild özelliğinin DefineConstants ve dosyalarının bulunduğu .props .NET SDK yükleme klasöründe nasıl tanımlandığını ve .targets değiştirildiğine bakabilirsiniz. SDK'lar, önceden tanımlanmış tanımları devre dışı bırakmak için proje dosyasında ayarlayabileceğiniz MSBuild özellikleri sağlar; örneğin, bkz . DisableImplicitFrameworkDefines.

Bazı proje ayarlarını yapılandırmaya göre özelleştirebilirsiniz, bazıları yapılandırmada aynı değere sahip olmalı ve bazıları da seçim seçeneği sağlamalıdır. Kullanılabilir seçenekleri görmek için dişli simgesine tıklayın ve destekleniyorsa, yapılandırmalar arasında aynı değerin kullanılıp kullanılmayacağını veya yapılandırmaya göre değişip değişmeyebileceğini ayarlayabilirsiniz. Varsayılan değere de sıfırlayabilirsiniz.

Derleme ayarının yapılandırmaya göre değişip değişmediğini denetlemeyi gösteren ekran görüntüsü.

Visual Studio proje yapılandırmalarını çözüm yapılandırmalarıyla nasıl ilişkilendirir?

Yeni bir çözüm yapılandırması tanımladığınızda ve mevcut bir yapılandırmadan ayarları kopyalamadığınızda Visual Studio, mevcut proje yapılandırmalarını yeni çözüm yapılandırmasıyla ilişkilendirmek için aşağıdaki ölçütleri kullanır. Ölçütler gösterilen sırayla değerlendirilir.

  1. Projenin yeni çözüm yapılandırmasının adıyla eşleşen bir yapılandırma adı (<yapılandırma adı><platform adı>) varsa, bu yapılandırma kullanılır. Yapılandırma adları büyük/küçük harfe duyarlı değildir.

  2. Projede yapılandırma adı bölümünün yeni çözüm yapılandırmasıyla eşleşip eşleşmediği bir yapılandırma adı varsa, platform bölümünün eşleşip eşleşmediğine bakılmaksızın bu yapılandırma kullanılır.

  3. Hala eşleşme yoksa, projede listelenen ilk yapılandırma kullanılır.

Visual Studio çözüm yapılandırmalarını yeni proje yapılandırmalarıyla nasıl ilişkilendirir?

Bir proje yapılandırması oluşturduğunuzda (Configuration Manageriçinde, o proje için Yapılandırma sütunundaki açılan menüden Yeni 'i seçip Yeni çözüm yapılandırmaları oluştur onay kutusunu seçtiğinizde Visual Studio, projeyi desteklediği her platformda oluşturmak için benzer adlı bir çözüm yapılandırması arar. Bazı durumlarda Visual Studio mevcut çözüm yapılandırmalarını yeniden adlandırır veya yenilerini tanımlar.

Visual Studio, çözüm yapılandırmalarını proje yapılandırmalarıyla ilişkilendirmek için aşağıdaki ölçütleri kullanır:

  • Proje yapılandırması bir platform belirtmiyorsa veya yalnızca bir platform belirtiyorsa, adı yeni proje yapılandırmasıyla eşleşen bir çözüm yapılandırması bulunur veya eklenir. Bu çözüm yapılandırmasının varsayılan adı bir platform adı içermez;<>alır.

  • Bir proje birden çok platformu destekliyorsa, desteklenen her platform için bir çözüm yapılandırması bulunur veya eklenir. Her çözüm yapılandırmasının adı hem proje yapılandırma adını hem de platform adını içerir ve<><proje yapılandırma adı biçimindedir.

Yapılandırmalar derlemeyi nasıl etkiler?

Derleme>Derleme Çözümü komutunu kullanarak bir çözüm oluşturduğunuzda Visual Studio yalnızca etkin yapılandırmayı oluşturur. Bu çözüm yapılandırmasında belirtilen tüm projeler oluşturulur ve oluşturulan tek proje yapılandırması, Visual Studio'daki araç çubuğunda gösterilen etkin çözüm yapılandırmasında ve etkin çözüm platformunda belirtilen proje yapılandırmasıdır. Örneğin, hata ayıklama ve x86. Diğer tanımlı yapılandırmalar ve platformlar derlenmez.

Tek bir eylemde birden çok yapılandırma ve platform oluşturmak istiyorsanız Visual Studio'da Derleme>Toplu Derleme seçeneğini kullanabilirsiniz. Bu özelliğe erişmek için Ctrl+Q tuşlarına basarak arama kutusunu açın ve Batch buildgirin. Toplu derleme tüm proje türleri için kullanılamaz. Bkz . Aynı anda birden çok yapılandırma oluşturma.