コード例 #1
0
        public async Task <ActionResult> AddCompany(Company model)
        {
            string message;

            using (var client = new HttpClient())
            {
                client.BaseAddress = new Uri("https://cloud-sse.iexapis.com");
                var response = await client.GetAsync($"/stable/stock/{model.Symbol}/quote?token=pk_f7b30f305a8c4aef8eaec49711a8344e");

                var stringResult = await response.Content.ReadAsStringAsync();

                //var rawShare = JsonConvert.DeserializeObject<Bought>(stringResult);
                List <Company> companies = db.Companies.ToList();
                List <string>  symbols   = new List <string>();
                foreach (Company company in companies)
                {
                    symbols.Add(company.Symbol);
                }

                if (!symbols.Contains(model.Symbol.ToUpper()) && !stringResult.Contains("Unknown"))
                {
                    Company newCompany = new Company
                    {
                        Symbol = model.Symbol.ToUpper(),
                        Name   = model.Name
                    };
                    db.Companies.Add(newCompany);
                    db.SaveChanges();
                    message = "New company has been added!";
                    return(Ok(new { message }));
                }
            }
            message = "This company does not exist in this stock market!";
            return(BadRequest(new { message }));
        }
コード例 #2
0
        public async Task <Object> DeleteAccount(UserModel model)
        {
            string userId = User.Claims.First(c => c.Type == "Id").Value;
            List <ApplicationUser> users = db.ApplicationUsers.Where(au => au.Id == userId).ToList();

            if (users.Count() > 0)
            {
                Feedback feedback = new Feedback
                {
                    Reason = model.Feedback
                };
                db.Feedbacks.Add(feedback);

                ApplicationUser user = users[0];

                List <Bought> boughts = db.Boughts.Where(b => b.AspNetUserId == userId).ToList();
                foreach (Bought share in boughts)
                {
                    db.Boughts.Remove(share);
                }

                List <Sold> solds = db.Solds.Where(b => b.AspNetUserId == userId).ToList();
                foreach (Sold share in solds)
                {
                    db.Solds.Remove(share);
                }
                db.ApplicationUsers.Remove(user);
                db.SaveChanges();
                await signInManager.SignOutAsync();

                string message = "We're sorry to see you go!";
                return(Ok(new { message }));
            }
            else
            {
                return(BadRequest(new { message = "Failed. Please try again." }));
            }
        }