zoukankan      html  css  js  c++  java
  • ASP.NET MVC学习(一)

    这几天在学习asp.net mvc 一上来就被书中的什么依赖注入,什么单元测试搞的晕晕呼呼,根本就不理解,前天开始做书中的运动商店项目,一上来就遇到个大难题,书中的连接字符串的写法,跟以往在winform和WPF中的连接字符串不一样,网页展示不出来,没有抛异常,我估计是没有数据的缘故,但是,我的数据库中明明有数据啊。就索性照着书上的抄,还是不行,经过百度,书中所用的是loaclDB(一种轻量级的数据库)创建数据库,在创建时需要知道实例名,而这个实例名每个人可能不同,最快知道这个实例名方法是,直接创建一个MVC5的项目,在web.config中复制就行了。

       今天做完了商品展示页,但是不明白其中的运行原理。总结一下程序运行思路:

    创建product类

    public  class Product
        {
             public int ProductID { get; set; }
            public string ProductName { get; set; }
            public string Description { get; set; }      
            public string Category { get; set; }
            public decimal Price { get; set; }
        }

    创建IProductRespository接口  商品仓库

    public   interface IProductRespository
        {
            IEnumerable<Product> Products { get; }
          
           
        }

    类太多了,不贴了

      测试程序,首先应该激活controller--->而在书上的这个程序中productController有个构造函数

       public ProductController(IProductRespository productRespository)
            {
                this.respository = productRespository;
            }

    在下面的   public ViewResult List 方法所用的模型都是从IProductRespository接口的Products熟悉中得到,既然激活productController,接下来应该执行它的构造函数,我猜测应该是这个东西   kernel.Bind<IProductRespository>().To<EFPoductRepository>();随后执行下面这个类

    public  class EFPoductRepository : IProductRespository
        {
            private EFDbcontext Context = new EFDbcontext();
            public IEnumerable<Product> Products
            {
                get
                {
                    return Context.Products;
                }
            }
        }

    接着执行

     public class EFDbcontext:DbContext
        {
            public DbSet<Product> Products { get; set; }
        }

    下面应该回到了productController中去执行List方法

  • 相关阅读:
    Angular中文api
    Angular各版本和组件下载
    判断一个浏览器是否支持opacity
    查找函数参数名称
    运行时代码求值
    简单的动画引擎
    利用闭包特性改写addEventListener的回调函数
    springboot指定redis库编号配置实现
    springboot获取IOC(ApplicationContext)实例
    ajax-springMVC提交表单的方式
  • 原文地址:https://www.cnblogs.com/wscar/p/6376495.html
Copyright © 2011-2022 走看看