Öğretici: Visual Studio kullanarak bir .NET konsol uygulaması yayımlama

Bu öğreticide, diğer kullanıcıların çalıştıracakları bir konsol uygulamasının nasıl yayımlanları gösterir. Yayımlama, uygulamanızı çalıştırmak için gereken dosya kümelerini oluşturur. Dosyaları dağıtmak için hedef makineye kopyalayın.

Önkoşullar

Uygulamayı yayımlama

  1. Visual Studio’yu çalıştırın.

  2. .NET konsol uygulaması oluşturma içinde oluşturduğunuz HelloWorld projesini Visual Studio.

  3. Yayın derleme yapılandırmasını Visual Studio emin olun. Gerekirse, araç çubuğundaki derleme yapılandırma ayarını Hata Ayıklama'dan Sürüm olarak değiştirin.

    Visual Studio derlemesi seçiliyken araç çubuğu

  4. HelloWorld projesine sağ tıklayın (HelloWorld çözümüne değil) ve menüden Yayımla'yı seçin.

    Visual Studio Yayımla bağlam menüsü

  5. Yayımla sayfasının Hedef sekmesinde Klasör'i ve ardından Sonraki'yi seçin.

    Visual Studio'de yayımlama hedefi Visual Studio

  6. Yayımla sayfasının Belirli Hedef sekmesinde Klasör'e ve ardından Sonraki'yi seçin.

    Visual Studio'de belirli yayımlama hedefini Visual Studio

  7. Yayımla sayfasının Konum sekmesinde Son'a tıklayın.

    Visual Studio Yayımlama sayfası Konum sekmesi

  8. Yayımla penceresinin Yayımla sekmesinde Yayımla'yı seçin.

    Visual Studio Yayımla penceresi

Dosyaları inceleme

Varsayılan olarak, yayımlama işlemi yayımlanmış uygulamanın .NET çalışma zamanının yüklü olduğu makinede çalıştırılacak bir dağıtım türü olan çerçeveye bağımlı bir dağıtım oluşturur. Kullanıcılar, yayımlanan uygulamayı yürütülebilir dosyaya çift tıklayarak veya komut isteminden dotnet HelloWorld.dll komutu çalıştırarak çalıştırabilirsiniz.

Aşağıdaki adımlarda yayımlama işlemi tarafından oluşturulan dosyalara göz atacağız.

  1. Bu Çözüm Gezgini Tüm dosyaları göster'i seçin.

  2. Proje klasöründe bin/Release/net5.0/publish 'i genişletin.

    Çözüm Gezgini dosyaları gösteren dosya

    Resimde de olduğu gibi, yayımlanan çıkış aşağıdaki dosyaları içerir:

    • HelloWorld.deps.json

      Bu, uygulamanın çalışma zamanı bağımlılıkları dosyasıdır. Uygulamayı çalıştırmak için gereken .NET bileşenlerini ve kitaplıkları (uygulamanızı içeren dinamik bağlantı kitaplığı dahil) tanımlar. Daha fazla bilgi için bkz. Çalışma zamanı yapılandırma dosyaları.

    • HelloWorld.dll

      Bu, uygulamanın çerçeveye bağımlı dağıtım sürümüdür. Bu dinamik bağlantı kitaplığını yürütmek için bir dotnet HelloWorld.dll komut istemine girin. Uygulamayı çalıştırma yöntemi. .NET çalışma zamanı yüklü olan tüm platformlarda çalışır.

    • HelloWorld.exe

      Bu, uygulamanın çerçeveye bağımlı yürütülebilir sürümüdür. Çalıştırmak için komut HelloWorld.exe istemine yazın. Dosya işletim sistemine özgü.

    • HelloWorld.pdb (dağıtım için isteğe bağlı)

      Bu, hata ayıklama sembolleri dosyasıdır. Bu dosyayı uygulamayla birlikte dağıtmanız gerekmez, ancak uygulamanızın yayımlanan sürümünde hata ayıklamanız gerektiğinde dosyayı kaydetmeniz gerekir.

    • HelloWorld.runtimeconfig.json

      Bu, uygulamanın çalışma zamanı yapılandırma dosyasıdır. Bu, uygulamanın üzerinde çalıştırıla hazır olduğu .NET sürümünü tanımlar. Buna yapılandırma seçenekleri de ebilirsiniz. Daha fazla bilgi için bkz. .NET çalışma zamanı yapılandırma ayarları.

Yayımlanan uygulamayı çalıştırma

  1. Bu Çözüm Gezgini yayımla klasörüne sağ tıklayın ve Tam Yolu Kopyala'yı seçin.

  2. Bir komut istemi açın ve publish klasörüne gidin. Bunu yapmak için girin cd ve tam yolu yapıştırın. Örnek:

    cd C:\Projects\HelloWorld\bin\Release\net6.0\publish\
    
  3. Yürütülebilir dosyayı kullanarak uygulamayı çalıştırın:

    1. girin HelloWorld.exe ve Enter tuşuna basın.

    2. İstem yanıt olarak bir ad girin ve çıkmak için herhangi bir tuşa basın.

  4. komutunu kullanarak uygulamayı dotnet çalıştırın:

    1. girin dotnet HelloWorld.dll ve Enter tuşuna basın.

    2. İstem yanıt olarak bir ad girin ve çıkmak için herhangi bir tuşa basın.

Ek kaynaklar

Sonraki adımlar

Bu öğreticide bir konsol uygulaması yayımladık. Sonraki öğreticide, bir sınıf kitaplığı oluşturabilirsiniz.

Bu öğreticide, diğer kullanıcıların çalıştıracakları bir konsol uygulamasının nasıl yayımlanları gösterir. Yayımlama, uygulamanızı çalıştırmak için gereken dosya kümelerini oluşturur. Dosyaları dağıtmak için hedef makineye kopyalayın.

Önkoşullar

Uygulamayı yayımlama

  1. Visual Studio’yu çalıştırın.

  2. .NET konsol uygulaması oluşturma içinde oluşturduğunuz HelloWorld projesini Visual Studio.

  3. Yayın derleme yapılandırmasını Visual Studio emin olun. Gerekirse, araç çubuğundaki derleme yapılandırma ayarını Hata Ayıklama'dan Sürüm olarak değiştirin.

    Visual Studio derlemesi seçiliyken araç çubuğu

  4. HelloWorld projesine sağ tıklayın (HelloWorld çözümüne değil) ve menüden Yayımla'yı seçin.

    Visual Studio Yayımla bağlam menüsü

  5. Yayımla sayfasının Hedef sekmesinde Klasör'i ve ardından Sonraki'yi seçin.

    Visual Studio'de yayımlama hedefi Visual Studio

  6. Yayımla sayfasının Belirli Hedef sekmesinde Klasör'e ve ardından Sonraki'yi seçin.

    Visual Studio'de belirli yayımlama hedefini Visual Studio

  7. Yayımla sayfasının Konum sekmesinde Son'a tıklayın.

    Visual Studio Yayımlama sayfası Konum sekmesi

  8. Yayımla penceresinin Yayımla sekmesinde Yayımla'yı seçin.

    Visual Studio Yayımla penceresi

Dosyaları inceleme

Varsayılan olarak, yayımlama işlemi yayımlanmış uygulamanın .NET çalışma zamanının yüklü olduğu makinede çalıştırılacak bir dağıtım türü olan çerçeveye bağımlı bir dağıtım oluşturur. Kullanıcılar, yayımlanan uygulamayı yürütülebilir dosyaya çift tıklayarak veya komut isteminden dotnet HelloWorld.dll komutu çalıştırarak çalıştırabilirsiniz.

Aşağıdaki adımlarda yayımlama işlemi tarafından oluşturulan dosyalara göz atacağız.

  1. Bu Çözüm Gezgini Tüm dosyaları göster'i seçin.

  2. Proje klasöründe bin/Release/net5.0/publish 'i genişletin.

    Çözüm Gezgini dosyaları gösteren dosya

    Resimde de olduğu gibi, yayımlanan çıkış aşağıdaki dosyaları içerir:

    • HelloWorld.deps.json

      Bu, uygulamanın çalışma zamanı bağımlılıkları dosyasıdır. Uygulamayı çalıştırmak için gereken .NET bileşenlerini ve kitaplıklarını (uygulamanızı içeren dinamik bağlantı kitaplığı dahil) tanımlar. Daha fazla bilgi için bkz. çalışma zamanı yapılandırma dosyaları.

    • HelloWorld.dll

      Bu, uygulamanın çerçeveye bağımlı dağıtım sürümüdür. Bu dinamik bağlantı kitaplığını yürütmek için dotnet HelloWorld.dll bir komut istemine girin. Uygulamayı çalıştırma yöntemi, .NET çalışma zamanının yüklü olduğu tüm platformlarda çalışır.

    • HelloWorld.exe

      Bu, uygulamanın çerçeveye bağımlı yürütülebilir sürümüdür. Çalıştırmak için HelloWorld.exe bir komut istemine girin. Dosya işletim sistemine özgüdür.

    • HelloWorld. pdb (dağıtım için isteğe bağlı)

      Bu, hata ayıklama sembolleri dosyasıdır. Bu dosyayı uygulamanızla birlikte dağıtmanız gerekmez, ancak uygulamanızın yayımlanan sürümünde hata ayıklaması yapmanız gereken bir olaya kaydetmeniz gerekir.

    • HelloWorld. runtimeconfig. JSON

      Bu, uygulamanın çalışma zamanı yapılandırma dosyasıdır. Uygulamanızın üzerinde çalışmak üzere oluşturulduğu .NET sürümünü tanımlar. Ayrıca, buna yapılandırma seçenekleri de ekleyebilirsiniz. Daha fazla bilgi için bkz. .NET çalışma zamanı yapılandırma ayarları.

Yayımlanan uygulamayı çalıştırma

  1. Çözüm Gezgini, Yayımla klasörüne sağ tıklayın ve tam yolu Kopyala' yı seçin.

  2. Bir komut istemi açın ve Yayımla klasörüne gidin. Bunu yapmak için cd tam yolu girin ve ardından yapıştırın. Örnek:

    cd C:\Projects\HelloWorld\bin\Release\net5.0\publish\
    
  3. Yürütülebilir dosyayı kullanarak uygulamayı çalıştırın:

    1. Yazın HelloWorld.exe ve ENTER tuşuna basın.

    2. İstemine yanıt olarak bir ad girin ve çıkmak için herhangi bir tuşa basın.

  4. Şu komutu kullanarak uygulamayı çalıştırın dotnet :

    1. Yazın dotnet HelloWorld.dll ve ENTER tuşuna basın.

    2. İstemine yanıt olarak bir ad girin ve çıkmak için herhangi bir tuşa basın.

Ek kaynaklar

Sonraki adımlar

Bu öğreticide bir konsol uygulaması yayımladınız. Sonraki öğreticide, bir sınıf kitaplığı oluşturursunuz.

Bu öğretici yalnızca .NET 5 ve .NET 6 ' da kullanılabilir. Sayfanın üst kısmında bu seçeneklerden birini belirleyin.