public IActionResult GetLoremText([FromQuery] LoremText loremText)
        {
            string result;
            int    maxId = db.LoremText.Max(x => x.NumberOfWords);

            StringBuilder builder = new StringBuilder();

            if (loremText == null || loremText.NumberOfWords <= 0 || loremText.NumberOfWords > maxId)
            {
                //borrowing Loremtext from animaltext column (faster)
                var text = db.AnimalText.Where(x => x.AnimalId == 1).FirstOrDefault();
                result = text.LoremText;

                return(Content(result));
            }


            int id       = loremText.NumberOfWords;
            int rand_num = 0;

            for (int i = 1; i <= id; i++)
            {
                Random rand = new Random();
                rand_num = rand.Next(1, maxId);

                loremText = db.LoremText.Where(x => x.NumberOfWords == rand_num).SingleOrDefault();

                builder.Append(loremText.Lorem).Append(" ");
            }

            result = builder.ToString();
            return(Content(result));
        }
Esempio n. 2
0
        public HttpResponseMessage GetLoremSlow([FromUri] LoremText loremText)
        {
            string result;

            StringBuilder builder = new StringBuilder();

            System.Threading.Thread.Sleep(5000);

            int maxId    = db.LoremText.Max(x => x.numberOfWords);
            int rand_num = 0;
            var resp     = new HttpResponseMessage(HttpStatusCode.OK);

            if (loremText == null || loremText.numberOfWords <= 0 || loremText.numberOfWords > maxId)
            {
                for (int i = 1; i <= maxId; i++)
                {
                    loremText = db.LoremText.Where(x => x.numberOfWords == i).SingleOrDefault();

                    builder.Append(loremText.Lorem).Append(" ");
                }
                result       = builder.ToString();
                resp.Content = new StringContent(result, Encoding.UTF8, "text/plain");
                return(resp);
            }

            int id = loremText.numberOfWords;

            for (int i = 1; i <= id; i++)
            {
                Random rand = new Random();
                rand_num = rand.Next(1, maxId);

                loremText = db.LoremText.Where(x => x.numberOfWords == rand_num).SingleOrDefault();

                builder.Append(loremText.Lorem).Append(" ");
            }

            result       = builder.ToString();
            resp.Content = new StringContent(result, Encoding.UTF8, "text/plain");

            return(resp);
        }
        public IActionResult GetLoremSlow([FromQuery] LoremText loremText)
        {
            string result;

            StringBuilder builder = new StringBuilder();

            System.Threading.Thread.Sleep(5000);

            int maxId    = db.LoremText.Max(x => x.NumberOfWords);
            int rand_num = 0;

            if (loremText == null || loremText.NumberOfWords <= 0 || loremText.NumberOfWords > maxId)
            {
                for (int i = 1; i <= maxId; i++)
                {
                    loremText = db.LoremText.Where(x => x.NumberOfWords == i).SingleOrDefault();

                    builder.Append(loremText.Lorem).Append(" ");
                }
                result = builder.ToString();
                return(Content(result));
            }

            int id = loremText.NumberOfWords;

            for (int i = 1; i <= id; i++)
            {
                Random rand = new Random();
                rand_num = rand.Next(1, maxId);

                loremText = db.LoremText.Where(x => x.NumberOfWords == rand_num).SingleOrDefault();

                builder.Append(loremText.Lorem).Append(" ");
            }

            result = builder.ToString();

            return(Content(result));
        }
Esempio n. 4
0
        public IActionResult GetJsonText([FromQuery] LoremText loremText)
        {
            int maxId = db.LoremText.Max(x => x.NumberOfWords);

            string[] result;

            int rand_num = 0;

            if (loremText == null || loremText.NumberOfWords <= 0 || loremText.NumberOfWords > maxId)
            {
                string[] array2 = new string[4];

                for (int i = 0; i < 4; i++)
                {
                    Random rand = new Random();
                    rand_num = rand.Next(1, maxId);

                    loremText  = db.LoremText.Where(x => x.NumberOfWords == rand_num).SingleOrDefault();
                    array2[i] += loremText.Lorem;
                }
                result = array2;

                return(Ok(result));
            }
            int id = loremText.NumberOfWords;

            string[] array = new string[id];
            for (int i = 1; i <= id; i++)
            {
                Random rand = new Random();
                rand_num = rand.Next(1, maxId);

                loremText     = db.LoremText.Where(x => x.NumberOfWords == rand_num).SingleOrDefault();
                array[i - 1] += loremText.Lorem;
            }
            result = array;
            return(Ok(result));
        }
Esempio n. 5
0
        // GET: api/LoremTexts
        //public IQueryable<LoremText> GetLoremText()
        //{
        //    return db.LoremText;
        //}

        /// <summary>
        /// Gets a text with lorem by default and by numberOfWords unique identifier
        /// </summary>
        /// <param name="loremText">Contains an object of loremtext words</param>
        /// <returns>Returns a lorem text or a unique amount of lorem words</returns>
        public HttpResponseMessage GetLoremText([FromUri] LoremText loremText)
        {
            string result;
            int    maxId = db.LoremText.Max(x => x.numberOfWords);

            StringBuilder builder = new StringBuilder();

            var resp = new HttpResponseMessage(HttpStatusCode.OK);

            if (loremText == null || loremText.numberOfWords <= 0 || loremText.numberOfWords > maxId)
            {
                //borrowing Loremtext from animaltext column (faster)
                var text = db.AnimalText.Where(x => x.AnimalId == 1).FirstOrDefault();
                result       = text.LoremText;
                resp.Content = new StringContent(result, Encoding.UTF8, "text/plain");

                return(resp);
            }


            int id       = loremText.numberOfWords;
            int rand_num = 0;

            for (int i = 1; i <= id; i++)
            {
                Random rand = new Random();
                rand_num = rand.Next(1, maxId);

                loremText = db.LoremText.Where(x => x.numberOfWords == rand_num).SingleOrDefault();

                builder.Append(loremText.Lorem).Append(" ");
            }

            result       = builder.ToString();
            resp.Content = new StringContent(result, Encoding.UTF8, "text/plain");
            return(resp);
        }