Asp.net MVC學習日記十七(頁面Cache)

來源:互聯網
上載者:User

1、Models/Product.cs

 public class Product
    {
        public Guid ProductID { get; set; }
        public string Name { get; set; }
        public decimal Discount { get; set; }
        public decimal Retail { get; set; }
        public decimal Tax { get; set; }
        public decimal Price
        {
            get
            {
                decimal finalCost = Retail;
                if (Discount > 0)
                    finalCost = finalCost - (finalCost * Discount);
                finalCost = finalCost + (finalCost * Tax);
                return finalCost;
            }
            private set { }
        }
    }

 

2、Models/ProductService.cs

public class ProductService
    {
        public List<Product> GetProducts()
        {
            Thread.Sleep(1000); //connect to the database
            Thread.Sleep(1000); //run a query and return data
            Random rnd = new Random(99);
            return Builder<Product>
            .CreateListOfSize(1000)
            .WhereAll()
            .Have(p => p.Discount = Convert.ToDecimal("." +
            rnd.Next(1, 99)))
            .WhereAll()
            .Have(p => p.Tax = new decimal(.10))
            .Build()
            .ToList();
        }
    }

3、Controllers/HomeController.cs

  [OutputCache(Duration = (60 * 60), VaryByParam = "none")]
        public ActionResult Products()
        {

            Stopwatch sw = new Stopwatch();
            sw.Start();
            List<Product> products = new ProductService().GetProducts();
            sw.Stop();
            Response.Write(sw.ElapsedMilliseconds);
            return View(products);
        }

 

4、添加Products強型別視圖,並且實現List的視圖內容

 

ok

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.