// GET api/values
        public IEnumerable <string> Get()
        {
            FindItemsAdvancedRequest request = new FindItemsAdvancedRequest();

            // request.keywords = keyword.Text;
            if (request.keywords == null)
            {
                request.keywords = "ipod";
            }
            PaginationInput pi = new PaginationInput();

            pi.entriesPerPage          = 10;
            pi.entriesPerPageSpecified = true;
            request.paginationInput    = pi;

            // Call the service
            FindingServicePortTypeClient client;
            string appID = System.Configuration.ConfigurationManager.AppSettings["AppID"];
            string findingServerAddress = System.Configuration.ConfigurationManager.AppSettings["FindingServerAddress"];

            APIManager.Core.Configuration.ClientConfig config = new APIManager.Core.Configuration.ClientConfig();
            // Initialize service end-point configration
            config.EndPointAddress = findingServerAddress;

            // set eBay developer account AppID
            config.ApplicationId = appID;

            // Create a service client
            client = FindingServiceClientFactory.getServiceClient(config);
            FindItemsAdvancedResponse response = client.findItemsAdvanced(request);

            return(new string[] { "value1", "value2" });
        }
Example #2
0
        public async Task <ICollection <ItemDto> > FindItemsAdvanced(string userName)
        {
            const int EntriesPerPage = 100;
            const int MaxPages       = 100;
            int       pageNumber     = 1;
            var       itemList       = new List <Item>();

            int loaded = 0;

            do
            {
                var request = new FindItemsAdvancedRequest(userName, EntriesPerPage, pageNumber, true);
                var result  = await ExecuteRequest <FindItemsAdvancedRequest, FindItemsAdvancedResponse>(request);

                if (result.Ack.ToUpper() != "SUCCESS")
                {
                    throw new EbayException($"Ebay API error: {result.ErrorMessage?.Error?.Message}");
                }

                itemList.AddRange(result.SearchResult);
                loaded = result.SearchResult.Count;
                pageNumber++;
            }while (loaded == EntriesPerPage && pageNumber <= MaxPages);

            var itemInfo = itemList.Select(x => new ItemDto()
            {
                ItemId           = x.ItemId,
                Country          = x.Country,
                EbayDescription  = x.Title,
                EbayItemLocation = x.Location,
                EbayViewItemUrl  = x.ViewItemUrl
            }).ToList();

            return(itemInfo);
        }
Example #3
0
        public ActionResult Index(string Id)
        {
            // create a eBay client
            config.GlobalId = "EBAY-IE"; //use Irish eBay website (www.eBay.ie)
            FindingServicePortTypeClient client = FindingServiceClientFactory.getServiceClient(config);

            ViewBag.Message = Id;

            SearchItem[] items = null;
            try
            {
                // Create request object
                FindItemsAdvancedRequest request = new FindItemsAdvancedRequest();

                //filter items so just "buy it now" items appear
                ItemFilter itemFilter1 = new ItemFilter();
                itemFilter1.name  = ItemFilterType.ListingType;
                itemFilter1.value = new string[] { "FixedPrice" };

                ItemFilter[] itemFilterArray = new ItemFilter[1];
                itemFilterArray[0] = itemFilter1;

                // Set request parameters
                request.keywords   = Id;
                request.itemFilter = itemFilterArray;
                request.sortOrder  = SortOrderType.PricePlusShippingLowest;
                //request.sortOrderSpecified = true;
                OutputSelectorType[] outputs = { OutputSelectorType.SellerInfo };
                request.outputSelector = outputs;


                PaginationInput PaginationInput = new PaginationInput();
                //PaginationInput.totalNumberOfPages = 5;
                PaginationInput.entriesPerPageSpecified = true;
                PaginationInput.entriesPerPage          = 100;
                PaginationInput.pageNumberSpecified     = true;
                PaginationInput.pageNumber = 10;
                request.paginationInput    = PaginationInput;

                // Call the api
                FindItemsAdvancedResponse response = client.findItemsAdvanced(request);

                // Show output
                if (response.searchResult != null && response.searchResult.item != null)
                {
                    items = response.searchResult.item;
                    ViewBag.noResultsMsg = "";
                    return(View(items));
                }
                else if (Id.Length == 0)
                {
                    ViewBag.noResultsMsg = "No item entered. Please enter an item to search and try again";
                }
                else if (response.searchResult == null || response.searchResult.item == null)
                {
                    ViewBag.noResultsMsg = "No Results. Please try another search";
                }
            }
            catch (Exception ex)
            {
                var errorText = ex.Message;
            }

            return(View());
        }
Example #4
0
        public ActionResult SellerItems(string Id)
        {
            FindingServicePortTypeClient client = FindingServiceClientFactory.getServiceClient(config);
            ViewBag.Seller = Id;
            SearchItem[] items = null;
            try
            {
                // Create request object
              FindItemsAdvancedRequest  request = new FindItemsAdvancedRequest();

                ItemFilter[] ifilter = { new ItemFilter { name = ItemFilterType.Seller, value = new string[] { Id } } };
                request.itemFilter = ifilter;

                PaginationInput pi = new PaginationInput();
                pi.entriesPerPage = 105;
                pi.entriesPerPageSpecified = true;
                request.paginationInput = pi;

                // Call the service
                FindItemsAdvancedResponse response = client.findItemsAdvanced(request);

                // Show output
                if (response.searchResult != null && response.searchResult.item != null)
                {
                    items = response.searchResult.item;
                    ViewBag.resultcount = response.searchResult.count;
                    ViewBag.totalitems = response.paginationOutput.totalEntries;
                    ViewBag.location = items[0].location;
                    return View(items);
                }

            }
            catch (Exception ex)
            {
                var errorText = ex.Message;
            }

            return View();
        }
Example #5
0
        public IEnumerable<long> SearchLinks()
        {
            IList<long> list = new List<long>();
              //181419645692
              var config = new ClientConfig();
              config.EndPointAddress = "http://svcs.ebay.com/services/search/FindingService/v1";
              config.ApplicationId = "Artsiom97-3905-4c09-9e4e-4144ac444e6";

              var client = FindingServiceClientFactory.getServiceClient(config);

              var request = new FindItemsAdvancedRequest();
              // Set request parameters
              request.keywords = Keywords;
              request.categoryId = new string[] { CategoryId.ToString() };
              var pi = new PaginationInput();
              pi.entriesPerPage = PerPage;

              pi.entriesPerPageSpecified = true;
              request.paginationInput = pi;
              // Call the service
              var response = client.findItemsAdvanced(request);
              // Show output
              var items = response.searchResult.item;

              for (var i = 0; i < items.Length; i++)
              {
            list.Add(Convert.ToInt64(items[i].itemId));
              }
              return list;
        }
Example #6
0
        public List<tblItem> FindByKeyWord(String items)
        {
            List<tblItem> prodlist = new List<tblItem> { };
            FindItemsAdvancedRequest request = new FindItemsAdvancedRequest();
            //request.affiliate.trackingId = null;
            //request.affiliate.networkId = "9";
            // Set request parameters
            request.keywords = items;
            ItemFilter filter1 = new ItemFilter();
            ItemFilter filter2 = new ItemFilter();
            ItemFilter filter3 = new ItemFilter();
            filter3.name = ItemFilterType.Condition;
            filter3.value = new string[] { "1000" };

            ItemFilter[] filters = { filter3/*, filter2, filter3*/ };

            request.itemFilter = filters;
            //request.categoryId = items;
            if (request.keywords == null)
            {
                request.keywords = "ipod";
            }
            PaginationInput pi = new PaginationInput();
            pi.entriesPerPage = 100;
            pi.entriesPerPageSpecified = true;
            request.paginationInput = pi;

            // Call the service
            FindItemsAdvancedResponse response = m_client.findItemsAdvanced(request);

            SearchItem[] listing = response.searchResult.item;

            if (listing != null)
            {

                foreach (SearchItem i in listing)
                {
                    tblItem items_tbl = new tblItem();
                    items_tbl.item_category = i.primaryCategory.categoryId;
                    items_tbl.item_title = i.title;
                    items_tbl.item_id = i.itemId;
                    items_tbl.gallery_url = i.galleryURL;
                    items_tbl.listing_url = i.viewItemURL;

                    prodlist.Add(items_tbl);
                    try
                    {
                        DataClasses1DataContext context = new DataClasses1DataContext();
                        context.tblItems.InsertOnSubmit(items_tbl);
                        context.SubmitChanges();
                    }
                    catch (Exception e)
                    {
                        string s = e.Message;
                    }

                }

                return prodlist;
            }

            return prodlist;
        }