zoukankan      html  css  js  c++  java
  • Ninject使用demo

    public class HomeController : Controller
        {
            public ActionResult Index()
            {
    //核心对象 IKernel ninjectKernel
    = new StandardKernel(); ninjectKernel.Bind<IValueCaculator>().To<LinqValueCalcalator>();

    //方案1:获取接口实例 IValueCaculator calImpl
    = ninjectKernel.Get<IValueCaculator>(); //方案2:自身绑定 //ShoppingCart cart = ninjectKernel.Get<ShoppingCart>(); //cart1.Products = new List<Product>() { new Product() { Category = "food", Price = 12 }, new Product() { Category = "books", Price = 30 }, new Product() { Category = "wine", Price = 40 } }; ShoppingCart cart = new ShoppingCart(calImpl) { Products = new List<Product> { new Product() { Category = "food", Price = 12 }, new Product() { Category = "books", Price = 30 }, new Product() { Category = "wine", Price = 40 } } }; var sum=cart.Cal(); return View(); } public ActionResult About() { return View(); } } public class Product { public int ProductId { get; set; } public string Name { get; set; } public string Description { get; set; } public decimal Price { get; set; } public string Category { get; set; } } public interface IValueCaculator { decimal ValueProduct(IEnumerable<Product> products); } public class LinqValueCalcalator : IValueCaculator { public decimal ValueProduct(IEnumerable<Product> products) { return products.Sum(a => a.Price); } } public class ShoppingCart { protected IValueCaculator valueCaculator; public ShoppingCart(IValueCaculator caculator) { valueCaculator = caculator; } public IEnumerable<Product> Products { get; set; } public decimal Cal() { return valueCaculator.ValueProduct(Products); } }
  • 相关阅读:
    bootstrapValidator重新校验/全选回显
    mybatis遍历map参数查询
    location.href传json字符串
    springmvc异步处理
    intellIJ IDEA学习笔记3
    intellIJ IDEA学习笔记2
    intellIJ IDEA学习笔记
    maven国内镜像
    Docker版本Jenkins的使用
    Docker容器网络
  • 原文地址:https://www.cnblogs.com/Benjamin/p/3284842.html
Copyright © 2011-2022 走看看