Aracılığıyla paylaş


Visual Studio kullanarak Web Dağıtımı ASP.NET: Proje Özellikleri

tarafından Tom Dykstra

Başlangıç Projelerini İndir

Bu öğretici serisi, Visual Studio 2012 veya Visual Studio 2010 kullanarak bir ASP.NET web uygulamasını Azure App Service Web Apps veya üçüncü taraf barındırma sağlayıcısına dağıtmayı (yayımlamayı) gösterir. Seri hakkında bilgi için serideki ilk öğreticiye bakın.

Genel Bakış

Bazı dağıtım seçenekleri, proje dosyasında ( .csproj veya .vbproj dosyası) depolanan proje özelliklerinde yapılandırılır. Çoğu durumda, bu ayarların varsayılan değerleri istediğiniz gibi olur, ancak bunları değiştirmeniz gerekirse bu ayarlarla çalışmak için Visual Studio'da yerleşik olarak bulunan Proje Özellikleri kullanıcı arabirimini kullanabilirsiniz. Bu öğreticide , Proje Özellikleri'ndeki dağıtım ayarlarını gözden geçireceksiniz. Ayrıca boş bir klasörün dağıtılmasına neden olan bir yer tutucu dosyası da oluşturursunuz.

Proje özellikleri penceresinde dağıtım ayarlarını yapılandırma

Dağıtım sırasında ne olacağını etkileyen ayarların çoğu, aşağıdaki öğreticilerde göreceğiniz gibi yayımlama profiline dahil edilir. Bilmeniz gereken birkaç ayar, Proje Özellikleri penceresinin Paketle/Yayımla sekmelerinde bulunur. Bu ayarlar her derleme yapılandırması için belirtilir; başka bir deyişle, Bir Yayın derlemesi için, Hata Ayıklama derlemesi için sahip olduğunuzdan farklı ayarlara sahip olabilirsiniz.

Çözüm Gezgini'daContosoUniversity projesine sağ tıklayın, Özellikler'i seçin ve ardından Paketle/Web'i Yayımla sekmesini seçin.

Web'i Paketle/Yayımla sekmesi

Pencere görüntülendiğinde, varsayılan olarak çözüm için şu anda etkin olan derleme yapılandırmasının ayarlarını gösterir. Yapılandırma kutusu Etkin (Yayın) seçeneğini göstermiyorsa Yayın derleme yapılandırması ayarlarını görüntülemek için Yayın'ı seçin. Yayın derlemelerini hem test hem de üretim ortamlarınıza dağıtacaksınız.

Sürüm derleme yapılandırmasını seçme

Etkin (Yayın) veya Yayın seçiliyken, Yayın derleme yapılandırmasını kullanarak dağıttığınızda etkili olan değerleri görürsünüz:

  • Dağıtılacak öğeler kutusunda Yalnızca uygulamayı çalıştırmak için gereken dosyalar seçilir. Diğer seçenekler bu projedeki tüm dosyalar veya Bu proje klasöründeki tüm dosyalardır. Varsayılan seçimi değiştirmeden bırakarak, örneğin kaynak kod dosyalarını dağıtmaktan kaçınabilirsiniz. Bu ayar, SQL Server Compact ikili dosyalarını içeren klasörlerin projeye eklenmesinin nedenidir. Bu ayar hakkında daha fazla bilgi için bkz. Web Uygulaması Proje Dağıtımı SSS ASP.NET proje klasörümdeki tüm dosyalar neden dağıtılamıyor?
  • Oluşturulan hata ayıklama simgelerini dışla seçilidir. Bu derleme yapılandırmasını kullandığınızda hata ayıklaması yapmayacaksınız.
  • Sql'i Paketle/Yayımla sekmesinde yapılandırılan tüm veritabanlarını ekle seçilidir. Visual Studio'da hem veritabanlarının hem de dosyaların dağıtılıp dağıtılmayacağını belirtir. Onay kutusu etiketinde yalnızca Paketle/Yayımla SQL sekmesi belirtilse de, bu onay kutusunun temizlenmesi yayımlama profilinde yapılandırılan veritabanı dağıtımını da devre dışı bırakır. Bunu daha sonra yapacaksınız, bu nedenle onay kutusunun seçili kalması gerekir. Sql'i Paketle/Yayımla sekmesi, bu öğreticilerde kullanmayacağınız eski bir veritabanı yayımlama yöntemi için kullanılır.
  • Bu öğreticilerde tek tıklamayla yayımlamayı kullandığınız için Web Dağıtım Paketi Ayarları bölümü geçerli değildir.

Hata ayıklama derlemeleri için varsayılan ayarları görmek için Yapılandırma açılan kutusunu Hata Ayıklama olarak değiştirin. Bir Hata Ayıklama derlemesini dağıtırken hata ayıklayabileceğiniz şekilde Oluşturulan hata ayıklama simgelerini hariç tut işareti kaldırıldığında değerler aynıdır.

Elmah klasörünün dağıtıldığından emin olun

Önceki öğreticide gördüğünüz gibi Elmah NuGet paketi hata günlüğü ve raporlama işlevleri sağlar. Contoso Üniversitesi uygulamasında Elmah, hata ayrıntılarını Elmah adlı bir klasörde depoacak şekilde yapılandırıldı:

Elmah klasörü

Belirli dosya veya klasörlerin dağıtımdan dışlanması yaygın bir gereksinimdir; başka bir örnek, kullanıcıların dosyaları karşıya yükleyebileceği bir klasör olabilir. Geliştirme ortamınızda oluşturulan günlük dosyalarının veya karşıya yüklenen dosyaların üretim ortamına dağıtılmasını istemezsiniz. Bir güncelleştirmeyi üretime dağıtıyorsanız, dağıtım işleminin üretimde var olan dosyaları silmesini istemezsiniz. (Dağıtım seçeneğini nasıl ayarladığınıza bağlı olarak, hedef sitede bir dosya varsa ancak dağıttığınızda kaynak sitede yoksa, Web Dağıtımı bunu hedeften siler.)

Bu öğreticide daha önce gördüğünüz gibi, Web'i Paketle/Yayımla sekmesinde dağıtılacak öğeler seçeneği Yalnızca Bu uygulamayı çalıştırmak için Gereken Dosyalar olarak ayarlanmıştır. Sonuç olarak, elmah tarafından geliştirme aşamasında oluşturulan günlük dosyaları dağıtılmaz, bu da olmasını istediğiniz şeydir. (Dağıtılabilmesi için projeye dahil edilmesi ve Derleme Eylemi özelliğinin İçerik olarak ayarlanması gerekir. Daha fazla bilgi için bkz. Proje klasörümdeki dosyaların tümü neden dağıtılamıyor?ASP.NET Web Uygulaması Projesi Dağıtımı SSS). Ancak, Web Dağıtımı hedef sitede kopyalanacak en az bir dosya olmadığı sürece klasör oluşturmaz. Bu nedenle, klasörün kopyalanması için yer tutucu görevi görmesi için klasöre bir .txt dosyası ekleyeceksiniz.

Çözüm Gezginielmah klasörüne sağ tıklayın, Yeni Öğe Ekle'yi seçin ve Placeholder.txtadlı bir metin dosyası oluşturun. Şu metni içine yerleştirin: "Bu, klasörün dağıtıldığından emin olmak için bir yer tutucu dosyasıdır." ve dosyayı kaydedin. .txt dosyalarının Derleme Eylemi özelliği varsayılan olarak İçerik olarak ayarlandığından, Visual Studio'nun bu dosyayı ve içindeki klasörü dağıttığından emin olmak için yapmanız gerekenler bunlardır.

Özet

Şimdi tüm dağıtım kurulum görevlerini tamamladınız. Sonraki öğreticide, Contoso Üniversitesi sitesini test ortamına dağıtacak ve orada test edin.