• 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方法

  • 相关阅读:
    常用256安全色
    PHP获取中英文混合字符串的字数
    windows 2012 443端口无法访问解决随记!
    SQL提取时间段内数据
    正则表达式匹配
    PclZip library能够压缩与解压缩Zip格式
    安装IIS或证书上服务提示安装程序无法复制文件 ftpsvc2.dl的解决办法
    tomcat
    版本控制gitlab
    rsync
  • 原文地址:https://www.cnblogs.com/wscar/p/6376495.html
Copyright © 2020-2023  润新知