Visual Studio kullanarak SQL Server Compact ile ASP.NET Web Uygulaması Dağıtma: Giriş - 1 /12
tarafından Tom Dykstra
Bu öğretici serisi, Visual Studio 2012 RC veya Web için Visual Studio Express 2012 RC kullanarak SQL Server Compact veritabanı içeren bir ASP.NET web uygulaması projesi dağıtmayı (yayımlamayı) gösterir. Web Yayımlama Güncelleştirmesi'ni yüklerseniz Visual Studio 2010'u da kullanabilirsiniz.
Visual Studio 2012'nin RC sürümünden sonra sunulan dağıtım özelliklerini gösteren, SQL Server Compact dışındaki SQL Server sürümlerini dağıtmayı ve Azure Uygulaması Service Web Apps'e dağıtmayı gösteren bir öğretici için bkz. Visual Studio kullanarak Web Dağıtımı ASP.NET.
Bu öğreticiler, test için önce yerel geliştirme bilgisayarınızdaki IIS'ye ve ardından üçüncü taraf barındırma sağlayıcısına dağıtma işleminde size yol gösterir. Dağıttığınız uygulama bir uygulama veritabanı ve ASP.NET üyelik veritabanı kullanır. SQL Server Compact'ı kullanmaya ve SQL Server Compact'a dağıtmaya başlarsınız ve sonraki öğreticilerde veritabanı değişikliklerini dağıtma ve SQL Server'a geçiş işlemleri gösterilir.
Öğreticiler, Visual Studio'da ASP.NET nasıl çalışabileceğinizi bildiğinizi varsayar. Aksi takdirde, başlangıç için iyi bir yer, temel ASP.NET Web Forms Öğreticisi veya temel bir ASP.NET MVC Öğreticisi'dir.
Öğreticiyle doğrudan ilgili olmayan sorularınız varsa bunları ASP.NET Dağıtım forumu'na gönderebilirsiniz.
Genel bakış
Bu öğreticiler, test için önce yerel geliştirme bilgisayarınızdaki IIS'ye ve ardından üçüncü taraf barındırma sağlayıcısına dağıtma işleminde size yol gösterir. Dağıttığınız uygulama bir uygulama veritabanı ve ASP.NET üyelik veritabanı kullanır. SQL Server Compact'ı kullanmaya ve SQL Server Compact'a dağıtmaya başlarsınız ve sonraki öğreticilerde veritabanı değişikliklerini dağıtma ve SQL Server'a geçiş işlemleri gösterilir.
Öğreticilerin sayısı (11 artı bir sorun giderme sayfası) dağıtım işleminin göz korkutucu görünmesine neden olabilir. Aslında, bir siteyi dağıtmak için temel yordamlar öğretici kümesinin nispeten küçük bir bölümünü oluşturur. Ancak, gerçek dünyadaki durumlarda genellikle dağıtımın bazı küçük ama önemli ek yönleri hakkında bilgiye ihtiyaç duyarsınız; örneğin, hedef sunucuda klasör izinlerini ayarlama. Öğreticilere bu ek tekniklerin birçoğunu dahil ettik ve öğreticilerin gerçek bir uygulamayı başarıyla dağıtmanızı engelleyebilecek bilgileri bırakmamasını umuyoruz.
Öğreticiler sırayla çalışacak şekilde tasarlanmıştır ve her bölüm önceki bölümde oluşturulur. Ancak, durumunuzla ilgili olmayan bölümleri atlayabilirsiniz. (Bölümlerin atlanması, sonraki öğreticilerde yordamları ayarlamanızı gerektirebilir.)
Hedef Kitle
Öğreticiler, aşağıdaki durumlarda küçük kuruluşlarda veya diğer ortamlarda çalışan ASP.NET geliştiricileri hedeflemektedir:
- Sürekli tümleştirme işlemi (otomatik derlemeler ve dağıtım) kullanılmaz.
- Üretim ortamı üçüncü taraf barındırma sağlayıcısıdır.
- Bir kişi genellikle birden çok rolü doldurur (aynı kişi geliştirir, test eder ve dağıtır).
Kurumsal ortamlarda sürekli tümleştirme süreçlerinin uygulanması daha tipiktir ve üretim ortamı genellikle şirketin kendi sunucuları tarafından barındırılır. Farklı kişiler de genellikle farklı roller gerçekleştirir. Kurumsal dağıtım hakkında bilgi için bkz . Kurumsal Senaryolarda Web Uygulamalarını Dağıtma.
Her büyüklükteki kuruluşlar web uygulamalarını Azure'a da dağıtabilir ve bu öğreticilerde gösterilen yordamların çoğu Azure Uygulaması Services Web Apps için de geçerlidir. Azure'a giriş için bkz https://azure.microsoft.com. .
Öğreticilerde Gösterilen Barındırma Sağlayıcısı
Öğreticiler, bir barındırma şirketiyle hesap ayarlama ve uygulamayı bu barındırma sağlayıcısına dağıtma işleminde size yol gösterir. Öğreticilerin canlı bir web sitesine dağıtma deneyiminin tamamını gösterebilmesi için belirli bir barındırma şirketi seçildi. Her barındırma şirketi farklı özellikler sağlar ve sunucularına dağıtma deneyimi biraz değişir; ancak, bu öğreticide açıklanan işlem genel işlem için tipiktir.
Cytanium.com bu öğretici için kullanılan barındırma sağlayıcısı, kullanılabilen birçok barındırma sağlayıcısından biridir ve bu öğreticideki kullanımı bir onay veya öneri oluşturmaz.
Web Sitesi Projelerini Dağıtma
Contoso University bir Visual Studio web uygulaması projesidir. Bu öğreticide belirtilen dağıtım yöntemlerinin ve araçlarının çoğu Web Sitesi Projeleri için geçerli değildir. Web sitesi projelerinin nasıl dağıtılacağı hakkında bilgi için bkz . Dağıtım İçerik Eşlemesi ASP.NET.
ASP.NET MVC Projelerini Dağıtma
Bu öğreticide bir ASP.NET Web Forms projesi dağıtacaksınız, ancak nasıl yapılacağını öğrendiğiniz her şey ASP.NET MVC için de geçerlidir. Visual Studio MVC projesi, web uygulaması projesinin başka bir biçimidir. Tek fark, ASP.NET MVC'yi veya hedef sürümünüzü desteklemeyen bir barındırma sağlayıcısına dağıtım yapıyorsanız, projenize uygun (MVC 3 veya MVC 4) NuGet paketini yüklediğinizden emin olmanız gerekir.
Programlama Dili
Örnek uygulama C# kullanır, ancak öğreticiler C# bilgisi gerektirmez ve öğreticiler tarafından gösterilen dağıtım teknikleri dile özgü değildir.
Bu Öğretici Sırasında Sorun Giderme
Dağıtım sırasında bir hata oluştuğunda veya dağıtılan site düzgün çalışmıyorsa, hata iletileri her zaman bir çözüm sağlamaz. Bazı yaygın sorun senaryolarında size yardımcı olmak için bir sorun giderme başvuru sayfası mevcuttur. Öğreticileri incelediğinizde bir hata iletisi alırsanız veya bir şey çalışmıyorsa sorun giderme sayfasını kontrol edin.
Yorumlara Hoş Geldiniz
Öğreticilerle ilgili açıklamalar kabul edilir ve öğretici güncelleştirildiğinde, öğretici açıklamalarında sağlanan düzeltmeleri veya iyileştirme önerilerini dikkate almak için her çaba gösterilir.
Önkoşullar
Başlamadan önce, bilgisayarınızda Windows 7 veya üzerinin ve aşağıdaki ürünlerden birinin yüklü olduğundan emin olun:
- Visual Studio 2010 SP1
- Visual Web Developer Express 2010 SP1
- Web için Visual Studio 2012 RC veya Visual Studio Express 2012 RC
Visual Studio 2010 SP1 veya Visual Web Developer Express 2010 SP1'iniz varsa aşağıdaki ürünleri de yükleyin:
- .NET için Azure SDK (VS 2010 SP1) (Web Yayımlama Güncelleştirmesi'ni içerir)
- SQL Server Compact 4.0 için Microsoft Visual Studio 2010 SP1 Araçları
Öğreticiyi tamamlamak için başka bir yazılım gereklidir, ancak bu yazılımı henüz yüklemeniz gerekmez. Öğretici, ihtiyacınız olduğunda yükleme adımlarını gösterir.
Örnek Uygulamayı İndirme
Dağıttığınız uygulamanın adı Contoso University'dir ve sizin için zaten oluşturulmuştur. Bu, ASP.NET sitesindeki Entity Framework öğreticilerinde açıklanan Contoso Üniversitesi uygulamasını temel alan, üniversite web sitesinin basitleştirilmiş bir sürümüdür.
Önkoşulları yükledikten sonra Contoso University web uygulamasını indirin. .zip dosyası, projenin birden çok sürümünü ve 12 öğreticinin tümünü içeren bir PDF dosyası içerir. Öğreticinin adımlarıyla çalışmak için ContosoUniversity-Begin ile başlayın. Öğreticilerin sonunda projenin nasıl göründüğünü görmek için ContosoUniversity-End'i açın. Öğretici 10'da tam SQL Server'a geçiş öncesinde projenin nasıl göründüğünü görmek için ContosoUniversity-AfterTutorial09'ı açın.
Öğretici adımlarını kullanmaya hazırlanmak için ContosoUniversity-Begin'i Visual Studio projeleriyle çalışırken kullandığınız klasöre kaydedin. Varsayılan olarak şu klasördür:
C:\Users\<username>\Documents\Visual Studio 2012\Projects
(Bu öğreticideki ekran görüntüleri için proje klasörü , sürücüsündeki kök dizinde C
bulunur.)
Visual Studio'yu başlatın, projeyi açın ve çalıştırmak için CTRL-F5 tuşlarına basın.
Web sitesi sayfalarına menü çubuğundan erişilebilir ve aşağıdaki işlevleri gerçekleştirmenizi sağlar:
- Öğrenci istatistiklerini görüntüleme (Hakkında sayfası).
- Öğrencileri görüntüleme, düzenleme, silme ve ekleme.
- Kursları görüntüleme ve düzenleme.
- Eğitmenleri görüntüleme ve düzenleme.
- Bölümleri görüntüleme ve düzenleme.
Aşağıda birkaç temsili sayfanın ekran görüntüleri yer almaktadır.
Dağıtımı Etkileyen Uygulama Özelliklerini Gözden Geçirme
Uygulamanın aşağıdaki özellikleri, uygulamayı nasıl dağıttığınızı veya dağıtmak için yapmanız gerekenleri etkiler. Bunların her biri, serideki aşağıdaki öğreticilerde daha ayrıntılı olarak açıklanmıştır.
- Contoso University, öğrenci ve eğitmen adları gibi uygulama verilerini depolamak için bir SQL Server Compact veritabanı kullanır. Veritabanı, test verileriyle üretim verilerinin bir karışımını içerir ve üretime dağıttığınızda test verilerini dışlamanız gerekir. Öğretici serisinin ilerleyen bölümlerinde SQL Server Compact'tan SQL Server'a geçiş yapacaksınız.
- Uygulama, kullanıcı hesabı bilgilerini SQL Server Compact veritabanında depolayan ASP.NET üyelik sistemini kullanır. Uygulama, bazı kısıtlı bilgilere erişimi olan bir yönetici kullanıcı tanımlar. Üyelik veritabanını test hesapları olmadan ancak bir yönetici hesabıyla dağıtmanız gerekir.
- Uygulama veritabanı ve üyelik veritabanı veritabanı veritabanı altyapısı olarak SQL Server Compact kullandığından, veritabanı altyapısını barındırma sağlayıcısına ve veritabanlarının kendilerine dağıtmanız gerekir.
- Uygulama, üyelik sisteminin verilerini SQL Server Compact veritabanında depolaması için ASP.NET evrensel üyelik sağlayıcılarını kullanır. Evrensel üyelik sağlayıcılarını içeren derlemenin uygulamayla dağıtılması gerekir.
- Uygulama, uygulama veritabanındaki verilere erişmek için Entity Framework 5.0'ı kullanır. Entity Framework 5.0 içeren derlemenin uygulamayla dağıtılması gerekir.
- Uygulama bir üçüncü taraf hata günlüğü ve raporlama yardımcı programı kullanır. Bu yardımcı program, uygulamayla dağıtılması gereken bir derlemede sağlanır.
- Hata günlüğü yardımcı programı, XML dosyalarındaki hata bilgilerini bir dosya klasörüne yazar. Dağıtılan sitede ASP.NET altında çalışan hesabın bu klasöre yazma izni olduğundan emin olmanız ve bu klasörü dağıtımdan dışlamanız gerekir. (Aksi takdirde, test ortamındaki hata günlüğü verileri üretime dağıtılabilir ve/veya üretim hata günlüğü dosyaları silinebilir.)
- Uygulama, hedef ortama (test veya üretim) bağlı olarak dağıtılan Web.config dosyasında değiştirilmesi gereken bazı ayarları ve derleme yapılandırmasına bağlı olarak değiştirilmesi gereken diğer ayarları (Hata Ayıklama veya Sürüm) içerir.
- Visual Studio çözümü bir sınıf kitaplığı projesi içerir. Yalnızca bu projenin oluşturduğu derleme dağıtılmalıdır, projenin kendisi dağıtılmamalıdır.
Serideki bu ilk öğreticide örnek Visual Studio projesini indirdiniz ve uygulamayı dağıtma şeklinizi etkileyen site özelliklerini gözden geçirdiniz. Aşağıdaki öğreticilerde, bu işlemlerden bazılarını otomatik olarak işlenecek şekilde ayarlayarak dağıtıma hazırlanırsınız. Diğerleriyle el ile ilgilenirsiniz.