Megosztás a következőn keresztül:


Helyszíni WCF-szolgáltatás elérhetővététele egy felhőbeli webalkalmazás számára az Azure Relay használatával

Ez a cikk azt mutatja be, hogyan készíthet felhőbeli hibridalkalmazást a Microsoft Azure és a Visual Studio használatával. Létrehozhat egy alkalmazást, amely több Azure-erőforrást használ a felhőben. Ez az oktatóanyag a következőket ismerteti:

  • Meglévő webszolgáltatás létrehozása vagy alakítása a használathoz egy webes megoldással.
  • Az Azure Windows Communication Foundation (WCF) Relay szolgáltatás használata adatok megosztására egy Azure-alkalmazás és egy máshol üzemeltetett webszolgáltatás között.

Ebben az oktatóanyagban a következő feladatokat hajtja végre:

  • Az oktatóanyag előfeltételeinek telepítése.
  • Tekintse át a forgatókönyvet.
  • Hozzon létre egy névteret.
  • Hozzon létre egy helyszíni kiszolgálót.
  • Hozzon létre egy ASP .NET-alkalmazást.
  • Futtassa helyben az alkalmazást.
  • A webalkalmazás üzembe helyezése az Azure-ban.
  • Futtassa az alkalmazást az Azure-ban.

Előfeltételek

Az oktatóanyag teljesítéséhez a következő előfeltételekre lesz szüksége:

Hogyan segít az Azure Relay a hibrid megoldások terén?

Az üzleti megoldások általában egyéni kód és meglévő funkciók kombinációjából állnak. Az egyéni kód az új és egyedi üzleti követelményeket kezeli. A már meglévő megoldások és rendszerek biztosítják a meglévő funkciókat.

A megoldások tervezői elkezdték a felhőt használni a méretezési követelmények egyszerűbb kezelése és az alacsonyabb működési költségek érdekében. Ennek során azt tapasztalják, hogy a megoldásuk építőelemeiként használni kívánt meglévő szolgáltatásegységek a vállalati tűzfalon belül vannak, és a felhőmegoldás könnyen elérhető. Számos belső szolgáltatás nem úgy van felépítve vagy üzemeltetve, hogy könnyen elérhető legyen a vállalati hálózat peremhálózatán.

Az Azure Relay a meglévő WCF-webszolgáltatásokat veszi igénybe, és biztonságosan elérhetővé teszi ezeket a szolgáltatásokat a vállalati peremhálózaton kívül eső megoldások számára anélkül, hogy a vállalati hálózati infrastruktúrában tolakodó módosításokat kellene végrehajtania. Ezek a Relay-szolgáltatások továbbra is a meglévő környezeten belül vannak tárolva, de átadják a bejövő munkamenetek és a kérések figyelését a felhőn tárolt Relay-szolgáltatásnak. Az Azure Relay ezeket a szolgáltatásokat közös hozzáférésű jogosultságkód- (SAS-) hitelesítéssel a jogosulatlan hozzáféréssel szemben is védi.

A forgatókönyv áttekintése

Ebben az oktatóanyagban egy ASP.NET webhelyet hoz létre, amely lehetővé teszi a termékek listáját a termékleltár oldalán.

Scenario

Az oktatóanyag feltételezi, hogy egy meglévő helyi rendszeren elérhetők a termékek adatai, és hogy az Azure Relay közvetítőn keresztül éri el ezt a rendszert. Ezt a helyzetet egy egyszerű konzolalkalmazásban futó webszolgáltatás szimulálja. Egy memóriabeli termékkészletet tartalmaz. Ezt a konzolalkalmazást a saját számítógépén futtathatja, és üzembe helyezheti a webes szerepkört az Azure-ban. Ezzel láthatja, hogy az Azure-adatközpontban futó webes szerepkör hogyan hívja meg a számítógépet. Ez a hívás akkor is megtörténik, ha a számítógép szinte biztosan egy tűzfal és egy hálózati címfordítási (NAT) réteg mögött lesz.

A fejlesztési környezet kialakítása

Az Azure-alkalmazások fejlesztésének megkezdése előtt töltse le az eszközöket és állítsa be a fejlesztési környezetet:

  1. Telepítse az Azure SDK for .NET-et az SDK letöltési oldaláról.
  2. A .NET oszlopban válassza ki a Visual Studio használt verzióját. Ez az oktatóanyag a Visual Studio 2019-et használja.
  3. Amikor a rendszer a telepítő futtatására vagy mentésére kéri, válassza a Futtatás lehetőséget.
  4. A Webplatform-telepítő párbeszédpanelen válassza a Telepítés lehetőséget, és folytassa a telepítést.

Miután a telepítés befejeződött, minden szükséges rendelkezésére áll az alkalmazás fejlesztésének megkezdéséhez. Az SDK olyan eszközöket tartalmaz, amelyekkel könnyedén fejleszthet Azure-alkalmazásokat a Visual Studióban.

Névtér létrehozása

Az első lépés egy névtér létrehozása és egy közös hozzáférésű jogosultságkód (SAS) kulcs beszerzése. A névtér alkalmazáshatárt biztosít a továbbító szolgáltatáson keresztül közzétett összes alkalmazáshoz. A rendszer automatikusan létrehoz egy SAS-kulcsot egy szolgáltatásnévtér létrehozásakor. A szolgáltatásnévtér és az SAS-kulcs kombinációja biztosítja az Azure hitelesítő adatait az alkalmazáshoz való hozzáférés hitelesítéséhez.

  1. Jelentkezzen be az Azure Portalra.

  2. Válassza az Összes szolgáltatás lehetőséget a bal oldali menüben. Válassza az Integráció lehetőséget, keresse meg a Továbbítókat, vigye az egeret a Továbbítók fölé, majd válassza a Létrehozás lehetőséget.

    Screenshot showing the selection of Relays -> Create button.

  3. A Névtér létrehozása lapon kövesse az alábbi lépéseket:

    1. Válasszon egy Azure-előfizetést, amelyben létre szeretné hozni a névteret.

    2. Erőforráscsoport esetén válasszon ki egy meglévő erőforráscsoportot, amelyben elhelyezi a névteret, vagy hozzon létre egy újat.

    3. Adja meg a Relay névtér nevét.

    4. Válassza ki azt a régiót, amelyben a névteret üzemeltetni kell.

    5. Válassza a Véleményezés + létrehozás lehetőséget a lap alján.

      Screenshot showing the Create namespace page.

    6. A Véleményezés + létrehozás lapon válassza a Létrehozás lehetőséget.

    7. Néhány perc múlva megjelenik a névtér Relay lapja.

      Screenshot showing the home page for Relay namespace.

Felügyeleti hitelesítő adatok lekérése

  1. A Relay lapon válassza a megosztott hozzáférési szabályzatokat a bal oldali menüben. `

  2. A Megosztott hozzáférési szabályzatok lapon válassza a RootManageSharedAccessKey lehetőséget.

  3. Az SAS-szabályzat: RootManageSharedAccessKey területen válassza a Másolás gombot az elsődleges Csatlakozás ion-sztring mellett. Ez a művelet a vágólapra másolja a kapcsolati sztring későbbi használatra. Illessze be ezt az értéket a Jegyzettömbbe vagy egy másik ideiglenes helyre.

  4. A későbbi használat érdekében ismételje meg az előző lépést, és másolja ki és illessze be az Elsődleges kulcs értékét egy ideiglenes helyre.

    Screenshot showing the connection info for Relay namespace.

Helyszíni kiszolgáló létrehozása

Először egy szimulált helyszíni termékkatalógus-rendszert kell létrehoznia. Ez a projekt egy Visual Studio-konzolalkalmazás, és az Azure Service Bus NuGet-csomagot használja a Service Bus-kódtárak és konfigurációs beállítások belefoglalása érdekében.

  1. Indítsa el a Microsoft Visual Studiót rendszergazdaként. Ehhez kattintson a jobb gombbal a Visual Studio program ikonra, és válassza a Futtatás rendszergazdaként lehetőséget.

  2. A Visual Studióban válassza az Új projekt létrehozása lehetőséget.

  3. Az Új projekt létrehozása területen válassza a C# konzolalkalmazását (.NET-keretrendszer), és válassza a Tovább lehetőséget.

  4. Nevezze el a projekt ProductsServer nevét , és válassza a Létrehozás lehetőséget.

    Configure your new project

  5. A Megoldáskezelő kattintson a jobb gombbal a ProductsServer projektre, majd válassza a NuGet-csomagok kezelése lehetőséget.

  6. Válassza a Tallózás lehetőséget, majd keresse meg és válassza a WindowsAzure.ServiceBus lehetőséget. Válassza a Telepítés lehetőséget, és fogadja el a használati feltételeket.

    Select NuGet package

    A szükséges ügyfélszerelvényekre a rendszer most hivatkozik.

  7. Adjon egy új osztályt a termékszerződéshez. A Megoldáskezelő kattintson a jobb gombbal a ProductsServer projektre, és válassza az Osztály hozzáadása lehetőséget>.

  8. A Név mezőbe írja be a ProductsContract.cs nevet, és válassza a Hozzáadás lehetőséget.

Végezze el a következő kódmódosításokat a megoldáson:

  1. A ProductsContract.cs fájlban cserélje le a névtér definícióját a következő kódra, amely meghatározza a szolgáltatás szerződését.

    namespace ProductsServer
    {
        using System.Collections.Generic;
        using System.Runtime.Serialization;
        using System.ServiceModel;
    
        // Define the data contract for the service
        [DataContract]
        // Declare the serializable properties.
        public class ProductData
        {
            [DataMember]
            public string Id { get; set; }
            [DataMember]
            public string Name { get; set; }
            [DataMember]
            public string Quantity { get; set; }
        }
    
        // Define the service contract.
        [ServiceContract]
        interface IProducts
        {
            [OperationContract]
            IList<ProductData> GetProducts();
    
        }
    
        interface IProductsChannel : IProducts, IClientChannel
        {
        }
    }
    
  2. A Program.cs fájlban cserélje le a névtérdefiníciót a következő kódra, amely hozzáadja a profilszolgáltatást és annak gazdagépét.

    namespace ProductsServer
    {
        using System;
        using System.Linq;
        using System.Collections.Generic;
        using System.ServiceModel;
    
        // Implement the IProducts interface.
        class ProductsService : IProducts
        {
    
            // Populate array of products for display on website
            ProductData[] products =
                new []
                    {
                        new ProductData{ Id = "1", Name = "Rock",
                                         Quantity = "1"},
                        new ProductData{ Id = "2", Name = "Paper",
                                         Quantity = "3"},
                        new ProductData{ Id = "3", Name = "Scissors",
                                         Quantity = "5"},
                        new ProductData{ Id = "4", Name = "Well",
                                         Quantity = "2500"},
                    };
    
            // Display a message in the service console application
            // when the list of products is retrieved.
            public IList<ProductData> GetProducts()
            {
                Console.WriteLine("GetProducts called.");
                return products;
            }
    
        }
    
        class Program
        {
            // Define the Main() function in the service application.
            static void Main(string[] args)
            {
                var sh = new ServiceHost(typeof(ProductsService));
                sh.Open();
    
                Console.WriteLine("Press ENTER to close");
                Console.ReadLine();
    
                sh.Close();
            }
        }
    }
    
  3. A Megoldáskezelő kattintson duplán az App.config elemre a fájl Visual Studio-szerkesztőben való megnyitásához. Az elem alján <system.ServiceModel> , de még mindig belül <system.ServiceModel>adja hozzá a következő XML-kódot.

    Fontos

    Cserélje le yourServiceNamespace a névtér nevére és yourKey a portálról korábban lekért SAS-kulcsra:

      <services>
         <service name="ProductsServer.ProductsService">
           <endpoint address="sb://yourServiceNamespace.servicebus.windows.net/products" binding="netTcpRelayBinding" contract="ProductsServer.IProducts" behaviorConfiguration="products"/>
         </service>
      </services>
      <behaviors>
         <endpointBehaviors>
           <behavior name="products">
             <transportClientEndpointBehavior>
                <tokenProvider>
                   <sharedAccessSignature keyName="RootManageSharedAccessKey" key="yourKey" />
                </tokenProvider>
             </transportClientEndpointBehavior>
           </behavior>
         </endpointBehaviors>
      </behaviors>
    

    Megjegyzés:

    Az okozott transportClientEndpointBehavior hiba csak figyelmeztetés, és nem blokkoló probléma ebben a példában.

  4. Továbbra is az App.config elemben <appSettings> cserélje le a kapcsolati sztring értéket a portálról korábban beszerzett kapcsolati sztring.

    <appSettings>
       <!-- Service Bus specific app settings for messaging connections -->
       <add key="Microsoft.ServiceBus.ConnectionString"
           value="Endpoint=sb://yourNamespace.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=yourKey"/>
    </appSettings>
    
  5. Válassza a Ctrl+Shift+B billentyűkombinációt, vagy válassza a Build Solution (Build solution)>lehetőséget az alkalmazás létrehozásához és az eddigi munka pontosságának ellenőrzéséhez.

ASP.NET-alkalmazás létrehozása

Ebben a szakaszban egy egyszerű ASP.NET alkalmazást hoz létre, amely megjeleníti a termékszolgáltatásból lekért adatokat.

A projekt létrehozása

  1. Győződjön meg arról, hogy a Visual Studio rendszergazdaként fut.

  2. A Visual Studióban válassza az Új projekt létrehozása lehetőséget.

  3. Új projekt létrehozásakor válassza a C# ASP.NET webalkalmazását (.NET-keretrendszer), és válassza a Tovább lehetőséget.

  4. Nevezze el a projekt ProductsPortal nevét, és válassza a Létrehozás lehetőséget.

  5. Az Új ASP.NET webalkalmazás létrehozása területen válassza az MVC lehetőséget, és válassza a Módosítás lehetőséget a Hitelesítés területen.

    Select ASP .NET Web Application

  6. A Hitelesítés módosítása területen válassza a Nincs hitelesítés lehetőséget, majd kattintson az OK gombra. Ebben az oktatóanyagban egy olyan alkalmazást helyez üzembe, amelybe nem kell bejelentkeznie egy felhasználónak.

    Specify authentication

  7. Az Új ASP.NET webalkalmazás létrehozása területen válassza a Létrehozás lehetőséget az MVC-alkalmazás létrehozásához.

  8. Azure-erőforrások konfigurálása új webalkalmazáshoz. Kövesse a webalkalmazás közzétételének lépéseit. Ezután térjen vissza ehhez az oktatóanyaghoz, és folytassa a következő lépésben.

  9. A Megoldáskezelő kattintson a jobb gombbal a Modellek elemre, majd válassza az Osztály hozzáadása lehetőséget>.

  10. Nevezze el a Product.cs osztályt, majd válassza a Hozzáadás lehetőséget.

    Create Product model

A webalkalmazás módosítása

  1. A Visual Studio Product.cs fájljában cserélje le a meglévő névtérdefiníciót a következő kódra:

     // Declare properties for the products inventory.
     namespace ProductsWeb.Models
     {
        public class Product
        {
            public string Id { get; set; }
            public string Name { get; set; }
            public string Quantity { get; set; }
        }
     }
    
  2. A Megoldáskezelő bontsa ki a Vezérlők elemet, majd kattintson duplán a HomeController.cs elemre a fájl Visual Studióban való megnyitásához.

  3. A HomeController.cs fájlban cserélje le a meglévő névtérdefiníciót a következő kódra:

    namespace ProductsWeb.Controllers
    {
        using System.Collections.Generic;
        using System.Web.Mvc;
        using Models;
    
        public class HomeController : Controller
        {
            // Return a view of the products inventory.
            public ActionResult Index(string Identifier, string ProductName)
            {
                var products = new List<Product>
                    {new Product {Id = Identifier, Name = ProductName}};
                return View(products);
            }
         }
    }
    
  4. A Megoldáskezelő bontsa ki a Megosztott nézetek elemet>, majd kattintson duplán a _Layout.cshtml parancsra a fájl Visual Studio-szerkesztőben való megnyitásához.

  5. Módosítsa az összes előfordulást My ASP.NET Application a Northwind Traders-termékekre.

  6. Távolítsa el a Home, Aboutés Contact a hivatkozásokat. A következő példában törölje a kiemelt kódot.

    Delete the generated list items

  7. A Megoldáskezelő bontsa ki a Nézetek>kezdőlapját, majd kattintson duplán az Index.cshtml parancsra a fájl Visual Studio-szerkesztőben való megnyitásához. Cserélje le a fájl teljes tartalmát a következő kódra:

    @model IEnumerable<ProductsWeb.Models.Product>
    
    @{
             ViewBag.Title = "Index";
    }
    
    <h2>Prod Inventory</h2>
    
    <table>
              <tr>
                  <th>
                      @Html.DisplayNameFor(model => model.Name)
                  </th>
                  <th></th>
                  <th>
                      @Html.DisplayNameFor(model => model.Quantity)
                  </th>
              </tr>
    
    @foreach (var item in Model) {
              <tr>
                  <td>
                      @Html.DisplayFor(modelItem => item.Name)
                  </td>
                  <td>
                      @Html.DisplayFor(modelItem => item.Quantity)
                  </td>
              </tr>
    }
    
    </table>
    
  8. Az eddigi munkája pontosságának ellenőrzéséhez válassza a Ctrl+Shift+B billentyűkombinációt a projekt létrehozásához.

Az alkalmazás futtatása helyben

Futtassa az alkalmazást a működése ellenőrzéséhez.

  1. Győződjön meg arról, hogy a ProductsPortal az aktív projekt. Kattintson a jobb gombbal a projekt nevére Megoldáskezelő, és válassza a Set As Startup Project (Indítási projekt beállítása) lehetőséget.
  2. A Visual Studióban válassza az F5 lehetőséget.

Az alkalmazásának meg kell jelennie egy böngészőben.

Screenshot shows an example of the application running in a browser with the URL highlighted.

Az egyes alkotórészek összeállítása teljes egésszé

A következő lépés, hogy a helyszíni termékkiszolgálót az ASP.NET-alkalmazáshoz csatlakoztassuk.

  1. Ha még nincs megnyitva, nyissa meg a Visual Studióban a ASP.NET alkalmazás létrehozása szakaszban létrehozott ProductsPortal projektet.

  2. A Helyszíni kiszolgáló létrehozása szakasz lépéséhez hasonlóan adja hozzá a NuGet-csomagot a projekthivatkozásokhoz. A Megoldáskezelő kattintson a jobb gombbal a ProductsPortal projektre, majd válassza a NuGet-csomagok kezelése lehetőséget.

  3. Keressen a WindowsAzure.ServiceBus kifejezésre, és válassza ki az WindowsAzure.ServiceBus elemet. Ezután fejezze be a telepítést, és zárja be ezt a párbeszédpanelt.

  4. A Megoldáskezelő kattintson a jobb gombbal a ProductsPortal projektre, majd válassza a Meglévő elem hozzáadása lehetőséget>.

  5. Keresse meg a ProductsContract.cs fájlt a ProductsServer konzolprojektben. ProductsContract.cs kiemelése. Kattintson a Hozzáadás melletti lefelé mutató nyílra, majd válassza a Hozzáadás hivatkozásként lehetőséget.

    Add as a link

  6. Ezután nyissa meg a HomeController.cs fájlt a Visual Studio szerkesztőjében, és a névtér definícióját cserélje az alábbi kódra. Mindenképpen cserélje le yourServiceNamespace a Relay névtér nevére és yourKey az SAS-kulcsra. Ez a kód lehetővé teszi, hogy az ügyfél meghívja a helyszíni szolgáltatást, és visszaadja a hívás eredményét.

    namespace ProductsWeb.Controllers
    {
        using System.Linq;
        using System.ServiceModel;
        using System.Web.Mvc;
        using Microsoft.ServiceBus;
        using Models;
        using ProductsServer;
    
        public class HomeController : Controller
        {
            // Declare the channel factory.
            static ChannelFactory<IProductsChannel> channelFactory;
    
            static HomeController()
            {
                // Create shared access signature token credentials for authentication.
                channelFactory = new ChannelFactory<IProductsChannel>(new NetTcpRelayBinding(),
                    "sb://yourServiceNamespace.servicebus.windows.net/products");
                channelFactory.Endpoint.Behaviors.Add(new TransportClientEndpointBehavior {
                    TokenProvider = TokenProvider.CreateSharedAccessSignatureTokenProvider(
                        "RootManageSharedAccessKey", "yourKey") });
            }
    
            public ActionResult Index()
            {
                using (IProductsChannel channel = channelFactory.CreateChannel())
                {
                    // Return a view of the products inventory.
                    return this.View(from prod in channel.GetProducts()
                                     select
                                         new Product { Id = prod.Id, Name = prod.Name,
                                             Quantity = prod.Quantity });
                }
            }
        }
    }
    
  7. A Megoldáskezelő kattintson a jobb gombbal a ProductsPortal megoldásra. Ne a projektre, hanem a megoldásra kattintson a jobb gombbal. Válassza a Meglévő projekt hozzáadása lehetőséget>.

  8. Keresse meg a ProductsServer projektet, és kattintson duplán a ProductsServer.csproj megoldásfájlra annak hozzáadásához.

  9. A ProductsServernek futnia kell az adatok ProductsPortalon való megjelenítéséhez. A Megoldáskezelő kattintson a jobb gombbal a ProductsPortal megoldásra, és válassza a Tulajdonságok lehetőséget a tulajdonságlapok megjelenítéséhez.

  10. Válassza a Közös tulajdonságok>indítási projekt lehetőséget, és válassza a Több indítási projekt lehetőséget. Győződjön meg arról, hogy a ProductsServer és a ProductsPortal ebben a sorrendben jelenik meg, és hogy mindkettő műveletea Start.

    Multiple startup projects

  11. Válassza a közös tulajdonságok>projektfüggőségeit a bal oldalon.

  12. Projektek esetén válassza a ProductsPortal lehetőséget. Győződjön meg arról, hogy a ProductsServer ki van jelölve.

    Project dependencies

  13. Projektek esetén válassza a ProductsServer lehetőséget. Győződjön meg arról, hogy a ProductsPortal nincs kijelölve, majd a módosítások mentéséhez kattintson az OK gombra .

A projekt helyi futtatása

Az alkalmazás helyi teszteléséhez a Visual Studióban válassza az F5 lehetőséget. Először a helyszíni kiszolgálónak, a ProductsServernek kell elindulnia, majd a ProductsPortal alkalmazásnak egy böngészőablakban kell elindulnia. Ezúttal azt láthatja, hogy a termékleltár felsorolja a helyszíni termékszolgáltatás rendszeréből lekért adatokat.

Web application

Válassza a Frissítés lehetőséget a ProductsPortal lapon. Minden alkalommal, amikor frissíti a lapot, a kiszolgálóalkalmazás egy üzenetet jelenít meg a ProductsServer meghívásakor.GetProducts()

Zárja be mindkét alkalmazást, mielőtt továbblép a következő szakaszra.

A ProductsPortal projekt telepítése egy Azure-webalkalmazásba

A következő lépés az Azure Web App ProductsPortal előtérének újbóli közzététele:

  1. A Megoldáskezelő kattintson a jobb gombbal a ProductsPortal projektre, és válassza a Közzététel lehetőséget. A Közzététel lapon válassza a Közzététel elemet.

    Megjegyzés:

    Előfordulhat, hogy egy hibaüzenet jelenik meg a böngészőablakban, amikor a ProductsPortal webprojekt automatikusan elindul a telepítés után. Emiatt nem kell aggódnia, ugyanis az okozza, hogy a ProductsServer alkalmazás még nem fut.

  2. Másolja ki az üzembe helyezett webalkalmazás URL-címét. Később szüksége lesz az URL-címre. Ezt az URL-címet a Visual Studio Azure-alkalmazás Szolgáltatástevékenység ablakából is lekérheti:

    URL of the deployed app

  3. Zárja be a böngészőablakot a futó alkalmazás leállításához.

Mielőtt az alkalmazást a felhőben futtatja, győződjön meg arról, hogy a ProductsPortal webalkalmazásként indul el a Visual Studióban.

  1. A Visual Studióban kattintson a jobb gombbal a ProductsPortal projektre, és válassza a Tulajdonságok lehetőséget.

  2. Válassza a Web lehetőséget. A Start Művelet csoportban válassza a Start URL-címet. Ebben a példában https://productsportal20190906122808.azurewebsites.net/adja meg a korábban üzembe helyezett webalkalmazás URL-címét.

    Start URL

  3. Válassza az Összes fájl>mentése lehetőséget.

  4. Válassza a Build>Rebuild Solution lehetőséget.

Az alkalmazás futtatása

Az alkalmazás létrehozásához és futtatásához válassza az F5 lehetőséget. A helyszíni kiszolgálónak, amely a ProductsServer konzolalkalmazás, először el kell indulnia, majd a ProductsPortal alkalmazásnak egy böngészőablakban kell elindulnia, ahogy az itt látható:

Run the web app on Azure

A termékleltár felsorolja a termékszolgáltatás helyszíni rendszeréből lekért adatokat, és megjeleníti az adatokat a webalkalmazásban. Ellenőrizze az URL-címet, és győződjön meg arról, hogy a ProductsPortal Azure-webalkalmazás fut a felhőben.

Fontos

A ProductsServer konzolalkalmazásnak futnia kell, és képesnek kell lennie biztosítani az adatokat a ProductsPortal alkalmazás számára. Ha a böngésző hibaüzenetet jelenít meg, várjon még néhány másodpercet, amíg a ProductsServer betöltődik, és megjeleníti a következő üzenetet, majd frissítse a böngészőt.

A böngészőben frissítse a ProductsPortal lapot. Minden alkalommal, amikor frissíti a lapot, a kiszolgálóalkalmazás egy üzenetet jelenít meg a ProductsServer meghívásakor.GetProducts()

Updated output

Következő lépések

Folytassa a következő oktatóanyaggal: