zoukankan      html  css  js  c++  java
  • 【翻译】ASP.NET MVC4 入门(四)添加一个Model

    原文链接:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-model

    这一小节我们将添加一些类来管理数据库中的电影。这些类将会成为我们的ASP.NET MVC应用中的model部分。

    我们将会使用.net framework提供的数据访问技术——众所周知的Entity Framework来定义这些类。Entity Framework(通常简写成EF)支持一种叫做Code First的开发模式。Code First允许我们编写简单的代码来创建model。(这些类被称为POCO类,"plain-old CLR objects",平凡无奇的clr对象)我们可以使用这些类来创建数据库,从而使我们的开发流程整洁快速。

    添加Model类

    在解决方案资源管理器中,右键单击Models文件夹,选择"Add",然后选择"Class"。

    image

    为新建的类命名为Movie。

    为Movie类添加如下五个属性。

    public class Movie 
    {
        public int ID { get; set; }
        public string Title { get; set; }
        public DateTime ReleaseDate { get; set; }
        public string Genre { get; set; }
        public decimal Price { get; set; }
    }

    我们将使用Movie类来表示数据库里的电影数据。每一个Movie类的实例都对应数据库表中的一行记录,每一个属性都对应该行记录的一个字段。

    在同样的文件里添加如下的MovieDBContext类:

    public class MovieDBContext : DbContext 
    {
        public DbSet<Movie> Movies { get; set; } 
    }

    MovieDBContext类代表了Entity Framework数据库上下文,用来处理获取、存储和更新Movie对象到数据库的工作。MovieDBContext类派生自Entity Framework提供的DbContext类。

    为了使用DbContext和DbSet,我们需要添加相应的命名空间:

    using System.Data.Entity;

    完整的Movie.cs文件内容如下.

    using System;
    using System.Data.Entity;
    
    namespace MvcMovie.Models
    {
        public class Movie
        {
            public int ID { get; set; }
            public string Title { get; set; }
            public DateTime ReleaseDate { get; set; }
            public string Genre { get; set; }
            public decimal Price { get; set; }
        }
    
        public class MovieDBContext : DbContext
        {
            public DbSet<Movie> Movies { get; set; }
        }
    }

    创建一个连接字符串并且使用SQL Server LocalDB

    我们创建的MovieDBContext类负责连接到数据库并且处理数据库中记录到Movie对象的映射。你肯定有一个疑问:我们怎样指定这个类要连接的数据库。我们通过在应用程序的Web.config文件添加数据库连接信息来实现。

    打开应用程序根路径下的Web.config文件(注意不是Views文件夹下的Web.config)。

    image

    为<connectionStrings>元素添加如下内容:

    <add name="MovieDBContext"   connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Movie.mdf;Integrated Security=True"  providerName="System.Data.SqlClient"/>

    注:原文中使用的是Visual Studio 2012,使用的数据库是Sql Server LocalDB,我使用的是Visual Studio 2010,使用的数据库是Sql Server Express,如果使用LocalDB的话,原文的连接字符串配置是:

    <add name="MovieDBContext" 
       connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\Movies.mdf;Integrated Security=True" 
       providerName="System.Data.SqlClient" 
    />

    注:我们仅仅需要在Web.config文件中添加连接字符串就行了,不需要创建数据库,数据库由Entity Framework负责创建,详情在下一篇文章里介绍。

    接下来就让我们创建一个MoviesController类来展示和编辑数据.

  • 相关阅读:
    [ERROR] Terminal initialization failed; falling back to unsupported
    设计模式原则
    设计模式:概述
    INFO Dispatcher:42
    Exception occurred during processing request: id to load is required for loading
    Java编程基础篇第六章
    Spring (一)(未完~~~
    Spring MVC处理过程理解(一)
    Spring MVC源码解析(二)
    MyBatis拦截器(一)
  • 原文地址:https://www.cnblogs.com/onepiece_wang/p/2970065.html
Copyright © 2011-2022 走看看