示例#1
0
        public ActionResult GetTrademeListingDuration()
        {
            var oauth = repository.GetOAuthToken(subdomainid.Value, OAuthTokenType.TRADEME, true);

            var service = new CatalogueService(oauth.token_key, oauth.token_secret);

            foreach (var category in db.trademe_categories)
            {
                if (!category.isLeaf)
                {
                    continue;
                }

                var duration = service.GetCategoryDuration(new GetCategoryDurationRequest(category.id));
                if (duration.GetCategoryDurationResult.Durations == null)
                {
                    continue;
                }

                if (db.trademe_listingdurations.Any(x => x.categoryid == category.id))
                {
                    continue;
                }

                category.default_listingduration = (byte)duration.GetCategoryDurationResult.Default.ToInt();

                foreach (var entry in duration.GetCategoryDurationResult.Durations)
                {
                    var ld = new trademe_listingduration();
                    ld.categoryid = category.id;
                    ld.duration   = (byte)entry.ToInt();
                    db.trademe_listingdurations.InsertOnSubmit(ld);
                }

                db.SubmitChanges();
            }

            return(Content("done"));
        }