Visual Studio veya Visual Web Developer kullanarak SQL Server Compact bir ASP.NET Web uygulaması dağıtma: IIS 'e test ortamı olarak dağıtma-5/12Deploying an ASP.NET Web Application with SQL Server Compact using Visual Studio or Visual Web Developer: Deploying to IIS as a Test Environment - 5 of 12

Tom Dykstra tarafındanby Tom Dykstra

Başlatıcı projesi indirDownload Starter Project

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ı projesini dağıtmayı (yayımlamayı) gösterir.This series of tutorials shows you how to deploy (publish) an ASP.NET web application project that includes a SQL Server Compact database by using Visual Studio 2012 RC or Visual Studio Express 2012 RC for Web. Ayrıca, Web yayımlama güncelleştirmesini yüklerseniz Visual Studio 2010 de kullanabilirsiniz.You can also use Visual Studio 2010 if you install the Web Publish Update. Seriye giriş için, serideki ilk öğreticiyebakın.For an introduction to the series, see the first tutorial in the series.

Visual Studio 2012 RC yayımlandıktan sonra tanıtılan dağıtım özelliklerini gösteren bir öğretici için, SQL Server Compact dışındaki SQL Server sürümlerinin nasıl dağıtılacağını gösterir ve Web Apps Azure App Service nasıl dağıtılacağını gösterir. bkz. Visual Studio kullanarak ASP.NET Web dağıtımı.For a tutorial that shows deployment features introduced after the RC release of Visual Studio 2012, shows how to deploy SQL Server editions other than SQL Server Compact, and shows how to deploy to Azure App Service Web Apps, see ASP.NET Web Deployment using Visual Studio.

Genel bakışOverview

Bu öğreticide, yerel bilgisayarda IIS 'ye bir ASP.NET Web uygulamasının nasıl dağıtılacağı gösterilmektedir.This tutorial shows how to deploy an ASP.NET web application to IIS on the local computer.

Bir uygulama geliştirirken, genellikle Visual Studio 'da çalıştırarak test edersiniz.When you develop an application, you generally test by running it in Visual Studio. Bu, varsayılan olarak, Visual Studio geliştirme sunucusunu (Cassini olarak da bilinir) kullandığınız anlamına gelir.By default, this means you're using the Visual Studio Development Server (also known as Cassini). Visual Studio geliştirme sunucusu, Visual Studio 'da geliştirme sırasında test yapmayı kolaylaştırır, ancak tam olarak IIS gibi çalışmaz.The Visual Studio Development Server makes it easy to test during development in Visual Studio, but it doesn't work exactly like IIS. Sonuç olarak, uygulamayı Visual Studio 'da test ettiğinizde doğru şekilde çalışacak, ancak barındırma ortamında IIS 'e dağıtıldığında başarısız olur.As a result, it's possible that an application will run correctly when you test it in Visual Studio, but fail when it's deployed to IIS in a hosting environment.

Uygulamanızı bu yollarla daha güvenilir bir şekilde test edebilirsiniz:You can test your application more reliably in these ways:

  1. Geliştirme sırasında Visual Studio 'da test ettiğinizde, Visual Studio geliştirme sunucusu yerine IIS Express veya tam IIS kullanın.Use IIS Express or full IIS instead of the Visual Studio Development Server when you test in Visual Studio during development. Bu yöntem genellikle sitenizin IIS altında nasıl çalışacağını daha doğru bir şekilde taklit eder.This method generally emulates more accurately how your site will run under IIS. Ancak, bu yöntem dağıtım işleminizi test etmez veya dağıtım işleminin sonucunun doğru şekilde çalışacağını doğrular.However, this method does not test your deployment process or validate that the result of the deployment process will run correctly.
  2. Daha sonra üretim ortamınıza dağıtmak için kullanacağınız süreci kullanarak uygulamayı geliştirme bilgisayarınızda IIS 'e dağıtın.Deploy the application to IIS on your development computer by using the same process that you'll use later to deploy it to your production environment. Bu yöntem, uygulamanızın IIS altında doğru şekilde çalışacağını doğrulamaya ek olarak dağıtım işleminizi doğrular.This method validates your deployment process in addition to validating that your application will run correctly under IIS.
  3. Uygulamayı üretim ortamınıza olabildiğince yakın bir test ortamına dağıtın.Deploy the application to a test environment that is as close as possible to your production environment. Bu öğreticiler için üretim ortamı bir üçüncü taraf barındırma sağlayıcısı olduğundan, ideal test ortamı barındırma sağlayıcısına sahip ikinci bir hesap olacaktır.Since the production environment for these tutorials is a third-party hosting provider, the ideal test environment would be a second account with the hosting provider. Bu ikinci hesabı yalnızca test için kullanırsınız, ancak üretim hesabıyla aynı şekilde ayarlanır.You would use this second account only for testing, but it would be set up the same way as the production account.

Bu öğreticide, seçenek 2 ' nin adımları gösterilmektedir.This tutorial shows the steps for option 2. Seçenek 3 ' e yönelik kılavuzluk, üretim ortamı öğreticisine dağıtmanın sonunda verilmiştir ve Bu öğreticinin sonunda, 1. seçenek için kaynakların bağlantıları vardır.Guidance for option 3 is provided at the end of the Deploying to the Production Environment tutorial, and at the end of this tutorial there are links to resources for option 1.

Anımsatıcı: bir hata iletisi alırsanız veya öğreticide ilerlediyseniz bir şey çalışmadıysanız sorun giderme sayfasınıkontrol ettiğinizden emin olun.Reminder: If you get an error message or something doesn't work as you go through the tutorial, be sure to check the troubleshooting page.

Uygulamayı Orta güvende çalışacak şekilde yapılandırmaConfiguring the Application to Run in Medium Trust

IIS yüklemeden ve dağıtımına dağıtılmadan önce, sitenin tipik bir paylaşılan barındırma ortamında olacak şekilde daha fazla çalışmasını sağlamak için bir Web. config dosya ayarını değiştirirsiniz.Before installing IIS and deploying to it, you'll change a Web.config file setting in order to make the site run more like it will in a typical shared hosting environment.

Barındırma sağlayıcıları genellikle Web sitenizi Orta güvendeçalıştırır, bu da izin verilmeyen bazı şeyler olduğu anlamına gelir.Hosting providers typically run your web site in medium trust, which means there are some things it is not allowed to do. Örneğin, uygulama kodu Windows kayıt defterine erişemez ve uygulamanızın klasör hiyerarşisinin dışındaki dosyaları okuyamaz veya yazamaz.For example, application code can't access the Windows registry and can't read or write files that are outside of your application's folder hierarchy. Varsayılan olarak, uygulamanız yerel bilgisayarınızda yüksek güvende çalışır, bu da uygulamanın üretime dağıtırken başarısız olabilecek işlemleri yapabileceği anlamına gelir.By default your application runs in high trust on your local computer, which means that the application might be able to do things that would fail when you deploy it to production. Bu nedenle, test ortamının üretim ortamını daha doğru yansıtması için uygulamayı Orta güvende çalışacak şekilde yapılandırırsınız.Therefore, to make the test environment more accurately reflect the production environment, you'll configure the application to run in medium trust.

Uygulama Web. config dosyasında, bu örnekte gösterildiği gibi System. Web öğesine bir güven öğesi ekleyin.In the application Web.config file, add a trust element in the system.web element, as shown in this example.

<configuration>
  <!-- Settings -->
  <system.web>
    <trust level="Medium" />
    <!-- Settings -->
  </system.web>
</configuration>

Uygulama artık yerel bilgisayarınızda bile IIS 'de Orta güvende çalışacaktır.The application will now run in medium trust in IIS even on your local computer. Bu ayar, üretimde başarısız olabilecek bir şey yapmak için uygulama kodu tarafından yapılan her türlü girişimden erken yakalamanıza olanak tanır.This setting enables you to catch as early as possible any attempts by application code to do something that would fail in production.

Note

Entity Framework Code First Migrations kullanıyorsanız, sürüm 5,0 veya sonraki bir sürümün yüklü olduğundan emin olun.If you are using Entity Framework Code First Migrations, make sure that you have version 5.0 or later installed. Entity Framework sürüm 4,3 ' de, geçişler veritabanı şemasını güncelleştirmek için tam güven gerektirir.In Entity Framework version 4.3, Migrations requires full trust in order to update the database schema.

IIS ve Web Dağıtımı yüklemeInstalling IIS and Web Deploy

Geliştirme bilgisayarınızda IIS 'e dağıtmak için IIS ve Web Dağıtımı yüklü olmalıdır.To deploy to IIS on your development computer, you must have IIS and Web Deploy installed. Bunlar varsayılan Windows 7 yapılandırmasına dahil edilmez.These are not included in the default Windows 7 configuration. Hem IIS hem de Web Dağıtımı zaten yüklediyseniz, sonraki bölüme atlayın.If you have already installed both IIS and Web Deploy, skip to the next section.

Web Platformu Yükleyicisi IIS için önerilen bir yapılandırma yüklediği ve gerekirse IIS ve Web Dağıtımı önkoşullarını otomatik olarak yüklediği için Web Platformu Yükleyicisi 'nin YÜKLENMESI, ııs ve Web dağıtımı yüklemek için tercih edilen yoldur.Using the Web Platform Installer is the preferred way to install IIS and Web Deploy, because the Web Platform Installer installs a recommended configuration for IIS and it automatically installs the prerequisites for IIS and Web Deploy if necessary.

IIS ve Web Dağıtımı yüklemek üzere Web Platformu Yükleyicisi 'ni çalıştırmak için aşağıdaki bağlantıyı kullanın.To run Web Platform Installer to install IIS and Web Deploy, use the following link. IIS, Web Dağıtımı veya gerekli bileşenlerinden herhangi birini zaten yüklediyseniz, Web Platformu Yükleyicisi yalnızca eksik olanları kurar.If you already have installed IIS, Web Deploy or any of their required components, the Web Platform Installer installs only what is missing.

Varsayılan uygulama havuzunu .NET 4 ' e ayarlamaSetting the Default Application Pool to .NET 4

IIS yüklendikten sonra, .NET Framework sürüm 4 ' ün varsayılan uygulama havuzuna atandığından emin olmak için IIS Yöneticisi 'ni çalıştırın.After installing IIS, run IIS Manager to make sure that the .NET Framework version 4 is assigned to the default application pool.

Windows Başlat menüsünde Çalıştır' ı seçin, "inetmgr" yazın ve ardından Tamam' ı tıklatın.From the Windows Start menu, select Run, enter "inetmgr", and then click OK. ( Çalıştır komutu Başlangıç menünüzde değilse, açmak Için Windows tuşuna ve R tuşuna basabilirsiniz.(If the Run command is not in your Start menu, you can press the Windows Key and R to open it. Ya da görev çubuğuna sağ tıklayın, Özellikler' e tıklayın, Başlat menüsü sekmesini seçin, Özelleştir' e tıklayın ve komutu Çalıştır' ı seçin.)Or right-click the taskbar, click Properties, select the Start Menu tab, click Customize, and select Run command.)

Bağlantılar bölmesinde, sunucu düğümünü genişletin ve uygulama havuzları' nı seçin.In the Connections pane, expand the server node and select Application Pools. Uygulama havuzları bölmesinde, aşağıdaki çizimde gösterildiği gibi, DefaultAppPool .NET Framework sürüm 4 ' e atanırsa, sonraki bölüme atlayın.In the Application Pools pane, if DefaultAppPool is assigned to the .NET framework version 4 as in the following illustration, skip to the next section.

Inetmgr_showing_4.0_app_poolsInetmgr_showing_4.0_app_pools

Yalnızca iki uygulama havuzu görürseniz ve her ikisi de .NET Framework 2,0 ' e ayarlanırsa, IIS 'de ASP.NET 4 ' ü yüklemelisiniz:If you see only two application pools and both of them are set to the .NET Framework 2.0, you have to install ASP.NET 4 in IIS:

  • Windows Başlat menüsünde komut istemi ' ni sağ tıklatıp yönetici olarak çalıştır' ı seçerek bir komut istemi penceresi açın.Open a command prompt window by right-clicking Command Prompt in the Windows Start menu and selecting Run as Administrator. Ardından, aşağıdaki komutları kullanarak IIS 'de ASP.NET 4 ' ü yüklemek için aspnet_regııs. exe ' yi çalıştırın.Then run aspnet_regiis.exe to install ASP.NET 4 in IIS, using the following commands. (64 bitlik sistemlerde "Framework" yerine "Framework64" koyun.)(In 64-bit systems, replace "Framework" with "Framework64".)

    cd %windir%\Microsoft.NET\Framework\v4.0.30319
    aspnet_regiis.exe –iru
    

    aspnet_regiis_installing_ASP. NET_4aspnet_regiis_installing_ASP.NET_4

    Bu komut .NET Framework 4 için yeni uygulama havuzları oluşturur, ancak varsayılan uygulama havuzu hala 2,0 olarak ayarlanır.This command creates new application pools for the .NET Framework 4, but the default application pool will still be set to 2.0. .NET 4 ' ü hedefleyen bir uygulamayı bu uygulama havuzuna dağıtacaksınız, bu nedenle uygulama havuzunu .NET 4 olarak değiştirmeniz gerekir.You'll be deploying an application that targets .NET 4 to that application pool, so you have to change the application pool to .NET 4.

IIS Yöneticisi 'nikapattıysanız yeniden çalıştırın, sunucu düğümünü genişletin ve uygulama havuzları ' na tıklayarak uygulama havuzları bölmesini yeniden görüntüleyin.If you closed IIS Manager, run it again, expand the server node, and click Application Pools to display the Application Pools pane again.

Uygulama havuzları bölmesinde, DefaultAppPool' e tıklayın ve ardından Eylemler bölmesinde temel ayarlar' a tıklayın.In the Application Pools pane, click DefaultAppPool, and then in the Actions pane click Basic Settings.

Inetmgr_selecting_Basic_Settings_for_app_poolInetmgr_selecting_Basic_Settings_for_app_pool

Uygulama havuzunu Düzenle iletişim kutusunda .NET Framework sürümünü .NET Framework v 4.0.30319 olarak değiştirin ve Tamam' a tıklayın.In the Edit Application Pool dialog box, change .NET Framework version to .NET Framework v4.0.30319 and click OK.

Selecting_. NET_4_for_DefaultAppPoolSelecting_.NET_4_for_DefaultAppPool

Artık IIS 'de yayımlamaya hazırsınız.You are now ready to publish to IIS.

IIS 'de yayımlamaPublishing to IIS

Visual Studio 2010 ve Web Dağıtımı kullanarak dağıtabileceğiniz çeşitli yollar vardır:There are several ways you can deploy using Visual Studio 2010 and Web Deploy:

  • Visual Studio tek tıklamayla Yayımla 'yı kullanın.Use Visual Studio one-click publish.
  • Bir dağıtım paketi oluşturun ve IIS Yöneticisi Kullanıcı arabirimini kullanarak yükler.Create a deployment package and install it using the IIS Manager UI. Dağıtım paketi, IIS 'de bir site yüklemek için gereken tüm dosyaları ve meta verileri içeren bir . zip dosyasından oluşur.The deployment package consists of a .zip file that contains all the files and metadata needed to install a site in IIS.
  • Bir dağıtım paketi oluşturun ve komut satırını kullanarak yüklemeyi yapın.Create a deployment package and install it using the command line.

Önceki öğreticilerde, dağıtım görevlerini otomatikleştirmek üzere Visual Studio 'Yu otomatik hale getirmek için ayarlama işlemi, bu üç yöntemin tümü için geçerlidir.The process you went through in the previous tutorials to set up Visual Studio to automate deployment tasks applies to all of these three methods. Bu öğreticilerde bu yöntemlerin ilkini kullanacaksınız.In these tutorials you'll use the first of these methods. Dağıtım paketlerini kullanma hakkında daha fazla bilgi için bkz. ASP.NET Deployment Content Map.For information about using deployment packages, see ASP.NET Deployment Content Map.

Yayımlamadan önce, Visual Studio 'Yu yönetici modunda çalıştırdığınızdan emin olun.Before publishing, make sure that you are running Visual Studio in administrator mode. (Windows 7 Başlat menüsünde, kullanmakta olduğunuz Visual Studio sürümü simgesine sağ tıklayın ve yönetici olarak çalıştır' ı seçin.) Yönetici modu, yalnızca yerel bilgisayarda IIS 'e yayımlarken yayımlama için gereklidir.(In the Windows 7 Start menu, right-click the icon for the version of Visual Studio you're using and select Run as Administrator.) Administrator mode is required for publishing only when you are publishing to IIS on the local computer.

Çözüm Gezgini, contosouniversity projesine (contosouniversity. dal projesi değil) sağ tıklayın ve Yayımla' yı seçin.In Solution Explorer, right-click the ContosoUniversity project (not the ContosoUniversity.DAL project) and select Publish.

Web 'ı Yayımla Sihirbazı görüntülenir.The Publish Web wizard appears.

Publish_Web_wizard_Profile_tab

Aşağı açılan listede <yeni...> öğesini seçin.In the drop-down list, select <New...>.

Yeni profil iletişim kutusunda "test" yazın ve ardından Tamam' a tıklayın.In the New Profile dialog box, enter "Test", and then click OK.

New_Profile_dialog_box

Bu ad, daha önce oluşturduğunuz Web. test. config dönüştürme dosyasının orta düğümüyle aynıdır.This name is the same as the middle node of the Web.Test.config transform file that you created earlier. Bu yazışma, Web. test. config dönüştürmelerinin bu profili kullanarak yayımladığınızda uygulanmasına neden olur.This correspondence is what causes the Web.Test.config transformations to be applied when you publish by using this profile.

Sihirbaz otomatik olarak bağlantı sekmesine ilerler.The wizard automatically advances to the Connection tab.

Hizmet URL 'si kutusuna localhostyazın.In the Service URL box, enter localhost.

Site/uygulama kutusuna varsayılan Web sitesi/contosouniversityyazın.In the Site/application box, enter Default Web Site/ContosoUniversity.

Hedef URL kutusuna http://localhost/ContosoUniversitygirin.In the Destination URL box, enter http://localhost/ContosoUniversity.

Hedef URL ayarı gerekli değil.The Destination URL setting isn't required. Visual Studio uygulamayı dağıtma işlemini bitirdiğinde varsayılan tarayıcınızı otomatik olarak bu URL 'ye açar.When Visual Studio finishes deploying the application, it automatically opens your default browser to this URL. Tarayıcının dağıtımdan sonra otomatik olarak açılmasını istemiyorsanız, bu kutuyu boş bırakın.If you don't want the browser to open automatically after deployment, leave this box blank.

Publish_Web_wizard_Connection_tab_Test

Ayarların doğru olduğunu doğrulamak için bağlantıyı doğrula ' ya tıklayın ve yerel bilgisayarda IIS 'ye bağlanabilirsiniz.Click Validate Connection to verify that the settings are correct and you can connect to IIS on the local computer.

Yeşil onay işareti, bağlantının başarılı olduğunu doğrular.A green check mark verifies that the connection is successful.

Publish_Web_wizard_Connection_tab_validated

Ayarlar sekmesine Ilerlemek için İleri ' ye tıklayın.Click Next to advance to the Settings tab.

Yapılandırma açılan kutusu, dağıtılacak derleme yapılandırmasını belirtir.The Configuration drop-down box specifies the build configuration to deploy. Varsayılan değer, istediğiniz şeydir.The default value is Release, which is what you want.

Hedefteki ek dosyaları Kaldır onay kutusunu işaretsiz bırakın.Leave the Remove additional files at destination check box cleared. İlk dağıtımınız olduğundan, hedef klasörde henüz hiçbir dosya olmayacaktır.Since this is your first deployment, there won't be any files in the destination folder yet.

Veritabanları bölümünde, SchoolContextiçin bağlantı dizesi kutusuna aşağıdaki değeri girin:In the Databases section, enter the following value in the connection string box for SchoolContext:

Data Source=|DataDirectory|School-Prod.sdf

Çalışma zamanında bu bağlantı dizesini kullan seçili olduğundan, dağıtım işlemi bu bağlantı dizesini dağıtılan Web. config dosyasına yerleştirir.The deployment process will put this connection string in the deployed Web.config file because Use this connection string at runtime is selected.

Ayrıca, SchoolContextaltında Uygula Code First Migrations' yi seçin.Also under SchoolContext, select Apply Code First Migrations. Bu seçenek, dağıtım sürecinin MigrateDatabaseToLatestVersion başlatıcısı belirlemek için dağıtılan Web. config dosyasını yapılandırmasına neden olur.This option causes the deployment process to configure the deployed Web.config file to specify the MigrateDatabaseToLatestVersion initializer. Bu başlatıcı, uygulama ilk kez dağıtımdan sonra veritabanına eriştiğinde veritabanını en son sürüme otomatik olarak güncelleştirir.This initializer automatically updates the database to the latest version when the application accesses the database for the first time after deployment.

DefaultConnectionbağlantı dizesi kutusunda aşağıdaki değeri girin:In the connection string box for DefaultConnection, enter the following value:

Data Source=|DataDirectory|aspnet-Prod.sdf

Güncelleştirme veritabanını işaretsiz bırak.Leave Update database cleared. Üyelik veritabanı, App_verilerinde. sdf dosyası kopyalanarak dağıtılır ve dağıtım işleminin bu veritabanıyla başka bir şey yapmak istemezsiniz.The membership database will be deployed by copying the .sdf file in App_Data, and you don't want the deployment process to do anything else with this database.

Publish_Web_wizard_Settings_tab_Test

Önizleme sekmesine Ilerlemek için İleri ' ye tıklayın.Click Next to advance to the Preview tab.

Kopyalanacak dosyaların listesini görmek için Önizleme sekmesinde önizlemeyi Başlat ' a tıklayın.In the Preview tab, click Start Preview to see a list of the files that will be copied.

Publish_Web_wizard_Preview_tab_Test

Publish_Web_wizard_Preview_tab_Test_with_file_list

Yayımla’ta tıklayın.Click Publish.

Visual Studio Yönetici modunda değilse, bir izin hatasını belirten bir hata iletisi alabilirsiniz.If Visual Studio is not in administrator mode, you might get an error message that indicates a permissions error. Bu durumda, Visual Studio 'yu kapatın, yönetici modunda açın ve yeniden yayımlamayı deneyin.In that case, close Visual Studio, open it in administrator mode, and try to publish again.

Visual Studio yönetici modundaysa, Çıkış penceresi başarılı derlemeyi ve yayımlamayı raporlar.If Visual Studio is in administrator mode, the Output window reports successful build and publish.

Output_window_publish_Test

Tarayıcı, yerel bilgisayarda IIS 'de çalışan Contoso Üniversitesi giriş sayfasında otomatik olarak açılır.The browser automatically opens to the Contoso University Home page running in IIS on the local computer.

Home_page_TestHome_page_Test

Test ortamında test etmeTesting in the Test Environment

Ortam göstergesinin "(dev)" yerine "(test)" gösterdiğine dikkat edin; bu, ortam göstergesinin Web. config dönüştürmesinin başarılı olduğunu gösterir.Notice that the environment indicator shows "(Test)" instead of "(Dev)", which shows that the Web.config transformation for the environment indicator was successful.

Home_page_TestHome_page_Test

Dağıtılan veritabanının öğrenci olmadığını doğrulamak için öğrenciler sayfasını çalıştırın.Run the Students page to verify that the deployed database has no students. Bu sayfayı seçtiğinizde yüklenmesi birkaç dakika sürebilir çünkü Code First veritabanını oluşturup Seed metodunu çalıştırır.When you select this page it may take a few minutes to load because Code First creates the database and then runs the Seed method. (Giriş sayfasında olduğunuzda, uygulama veritabanına henüz erişmeyi denemediği için bu değil.)(It didn't do that when you were on the home page because the application didn't try to access the database yet.)

Students_page_TestStudents_page_Test

Code First, veritabanını eğitmen verileriyle birlikte içerdiğini doğrulamak için eğitmenler sayfasını çalıştırın:Run the Instructors page to verify that Code First seeded the database with instructor data:

Instructors_page_TestInstructors_page_Test

Öğrenciler menüsünde öğrencileri Ekle ' yi seçin, bir öğrenci ekleyin ve ardından öğrenciler sayfasında yeni öğrenci 'yi görüntüleyerek veritabanına başarıyla yazabildiğinizi doğrulayın:Select Add Students from the Students menu, add a student, and then view the new student in the Students page to verify that you can successfully write to the database:

Add_Students_page_TestAdd_Students_page_Test

Students_page_with_new_student_TestStudents_page_with_new_student_Test

Kurslar menüsünde kredileri Güncelleştir' i seçin.From the Courses menu, select Update Credits. Kredilerin güncelleştirilmesi sayfasında yönetici izinleri olması gerekir, bu nedenle oturum açma sayfası görüntülenir.The Update Credits page requires administrator permissions, so the Log In page is displayed. Daha önce oluşturduğunuz yönetici hesabı kimlik bilgilerini girin ("admin" ve "pas $ w0rd").Enter the administrator account credentials that you created earlier ("admin" and "Pas$w0rd"). Kredileri güncelleştirme sayfası görüntülenir ve bu, önceki öğreticide oluşturduğunuz yönetici hesabının test ortamına doğru şekilde dağıtıldığını doğrular.The Update Credits page is displayed, which verifies that the administrator account that you created in the previous tutorial was correctly deployed to the test environment.

Log_In_page_TestLog_In_page_Test

Update_Credits_page_TestUpdate_Credits_page_Test

ELMAH klasörünün yalnızca içindeki yer tutucu dosyası ile bulunduğunu doğrulayın.Verify that an Elmah folder exists with only the placeholder file in it.

Elmah_folder_TestElmah_folder_Test

Code First Migrations için otomatik Web. config değişikliklerini gözden geçirmeReviewing the Automatic Web.config Changes for Code First Migrations

C:\ınetpub\wwwroot\contosouniversity konumundaki dağıtılan uygulamadaki Web. config dosyasını açın ve dağıtım işleminin veritabanını en son sürüme otomatik olarak güncelleştirmek için Code First Migrations yapılandırıldığını görebilirsiniz.Open the Web.config file in the deployed application at C:\inetpub\wwwroot\ContosoUniversity and you can see where the deployment process configured Code First Migrations to automatically update the database to the latest version.

Dağıtım işlemi, Code First Migrations veritabanı şemasını güncelleştirmek için özel olarak kullanılacak yeni bir bağlantı dizesi de oluşturmuştur:The deployment process also created a new connection string for Code First Migrations to use exclusively for updating the database schema:

DatabasePublish_connection_string

Bu ek bağlantı dizesi, veritabanı şeması güncelleştirmeleri için bir kullanıcı hesabı ve uygulama verileri erişimi için farklı bir kullanıcı hesabı belirtmenizi sağlar.This additional connection string enables you to specify one user account for database schema updates, and a different user account for application data access. Örneğin, DB_Owner rolünü Code First Migrations ve DB_DataReader ve DB_DataWriter rollerine atayabilirsiniz.For example, you could assign the db_owner role to Code First Migrations, and db_datareader and db_datawriter roles to the application. Bu, uygulamadaki zararlı olabilecek kodun veritabanı şemasını değiştirmesini engelleyen yaygın bir savunma derinlemesine bir modeldir.This is a common defense-in-depth pattern that prevents potentially malicious code in the application from changing the database schema. (Örneğin, bu durum başarılı bir SQL ekleme saldırısında olabilir.) Bu model bu öğreticiler tarafından kullanılmaz.(For example, this might happen in a successful SQL injection attack.) This pattern is not used by these tutorials. SQL Server Compact için uygulanmaz ve bu serinin sonraki bir öğreticide SQL Server geçirdiğinizde uygulanmaz.It does not apply to SQL Server Compact, and it does not apply when you migrate to SQL Server in a later tutorial in this series. Cytanium sitesi, Cytanium adresinde oluşturduğunuz SQL Server veritabanına erişmek için yalnızca bir kullanıcı hesabı sunar.The Cytanium site offers just one user account for accessing the SQL Server database that you create at Cytanium. Senaryonuza bu kalıbı uygulayabiliyorsanız, aşağıdaki adımları gerçekleştirerek bunu yapabilirsiniz:If you are able to implement this pattern in your scenario, you can do it by performing the following steps:

  1. Web 'ı Yayımla sihirbazının Ayarlar sekmesinde, tam veritabanı şeması güncelleştirme izinlerine sahip bir Kullanıcı belirten bağlantı dizesini girin ve çalışma zamanında bu bağlantı dizesini kullan onay kutusunu temizleyin.In the Settings tab of the Publish Web wizard, enter the connection string that specifies a user with full database schema update permissions, and clear the Use this connection string at runtime check box. Dağıtılan Web. config dosyasında bu DatabasePublish bağlantı dizesi olur.In the deployed Web.config file, this becomes the DatabasePublish connection string.
  2. Uygulamanın çalışma zamanında kullanmasını istediğiniz bağlantı dizesi için bir Web. config dosyası dönüştürmesi oluşturun.Create a Web.config file transformation for the connection string that you want the application to use at run time.

Uygulamanızı geliştirme bilgisayarınızda IIS 'e dağıtmış ve orada test edersiniz.You have now deployed your application to IIS on your development computer and tested it there. Bu, dağıtım işleminin uygulamanın içeriğini doğru konuma (dağıtmak istemediğiniz dosyalar hariç) kopyaladığını ve ayrıca dağıtım sırasında Web Dağıtımı IIS 'nin doğru şekilde yapılandırıldığını doğrular.This verifies that the deployment process copied the application's content to the right location (excluding the files that you did not want to deploy), and also that Web Deploy configured IIS correctly during deployment. Sonraki öğreticide, henüz yapılmamış bir dağıtım görevini bulan bir test daha çalıştıracaksınız: ELMAH klasöründe klasör izinlerini ayarlama.In the next tutorial, you'll run one more test that finds a deployment task that has not yet been done: setting folder permissions on the Elmah folder.

Daha Fazla BilgiMore Information

IIS veya IIS Express Visual Studio 'da çalıştırma hakkında daha fazla bilgi için aşağıdaki kaynaklara bakın:For information about running IIS or IIS Express in Visual Studio, see the following resources:

Uygulamanız Orta güvende çalıştığında oluşabilecek sorunlar hakkında daha fazla bilgi için, bkz. The ASP.net Applications on the The The The The The The The The The Rolla site.For information about what issues might arise when your application runs in medium trust, see Hosting ASP.NET Applications in Medium Trust on the 4 Guys from Rolla site.