<%@ WebService Language="C#" Class="ProgAspNet.StockTickerInLine" %>

using System;
using System.Web.Services;

namespace ProgAspNet
{
   public class StockTickerInLine : System.Web.Services.WebService
   {
      // Konstruujemy i wypeniamy tablic symboli giedowych oraz ich cen.
      // Uwaga: ceny dotycz giedy w USA z  dnia 01/5/2005.
      string[,] stocks =
      {
         {"MSFT","Microsoft","25.30"},
         {"DELL","Dell Computers","34.83"},
         {"HPQ","Hewlett Packard","20.47"},
         {"YHOO","Yahoo!","34.50"},
         {"GE","General Electric","36.20"},
         {"IBM","International Business Machine","76.38"},
         {"GM","General Motors","26.68"},
         {"F","Ford Motor Company","9.11"}
      };

      [WebMethod]
      public double GetPrice(string StockSymbol)
      // Podajemy symbol giedowy, otrzymujemy cen waloru.
      {
         // Przegldamy kolejno elementy tablicy w poszukiwaniu symbolu.
         for (int i = 0; i < stocks.GetLength(0); i++)
         {
            // Przeprowadzamy porwnanie cigw tekstowych bez rozrniania maych i duych liter.
            if (String.Compare(StockSymbol, stocks[i,0], true) == 0)
               return Convert.ToDouble(stocks[i,2]);
         }
         return 0;
      }

      [WebMethod]
      public string GetName(string StockSymbol)
      // Podajemy symbol giedowy, otrzymujemy nazw waloru.
      {
         // Przegldamy kolejno elementy tablicy w poszukiwaniu symbolu.
         for (int i = 0; i < stocks.GetLength(0); i++)
         {
            // Przeprowadzamy porwnanie cigw tekstowych bez rozrniania maych i duych liter.
            if (String.Compare(StockSymbol, stocks[i,0], true) == 0)
               return stocks[i,1];
         }
         return "Symbol nie zosta znaleziony.";
      }
   }
}
