2014-07-30 MVC框架中对SQL Server数据库的访问

时间:2021-10-08 11:20:46

  今天是在吾索实习的第16天。我自己主要学习了基于MVC框架的系统的开发时,对SQL Server数据库的相关访问。其步骤如下:

  第一步,在Models文件夹中创建一个类,并命名为Movies.cs,如图1所示:

  2014-07-30 MVC框架中对SQL Server数据库的访问

图1  

  第二步,在上述Movies.cs文件中的namespace MvcTest.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; }
}

  其中,Movie对象中的每个实例对应数据库表Movies的每一行,每个属性对应数据库表Movies的相应字段。而MovieDBContext是EF(Entity Framework)的数据库上下文(即数据库环境),是由基类DbContext派生出来的。

  第三步,在项目根目录下的Web.config中<connectionStrings></connectionStrings>中添加如下连接字符串:

  

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

  其中,|DataDirectory|代表项目根目录下的App_Data文件夹,当此文件夹不存在Movies.mdf时,它会自动生成。而System.Data.SQLClient说明使用的是SQL Server的数据库。

  第四步,在Controllers文件夹中添加一个控制器MoviesController,控制器的模板、模型类、数据上下文类如图2所示:

2014-07-30 MVC框架中对SQL Server数据库的访问

图2

  添加后,MVC将自动为你自动创建 CRUD (创建、 读取、 更新和删除) 的操作方法和视图(Create.cshtml,Delete.cshtml,Details.cshtml,Edit.cshtml,和Index.cshtml),如图3:

2014-07-30 MVC框架中对SQL Server数据库的访问

图3

  这样,系统就能实现基本的增删改查了,是不是觉得很神奇呢,一开始我也觉得很不可思议的。

  但不幸的是,因MVC是三层架构的,内部原理比较复杂,所以设计系统前需要花费一些时间去思考。再加上,其多使用的新视图引擎Razor不能拖放控件,所以对于我们对HTML不是很熟悉的人来说也是有些挑战的。后来因我们所要制作的手机端BBS是一个很小型的系统,所以经理还是建议我们用普通的开发模式进行开发比较妥当,不容易造成得不偿失。因此,我们还是决定用会普通的开发模式进行开发了。

2014-07-30 MVC框架中对SQL Server数据库的访问的更多相关文章

  1. 访问内网中的sql server数据库的简便方法

    前言: 有时候我们要访问局域网内的 sql server服务器,比如测试环境数据库在公司内网,回到家或在客户现场要连接内网中的数据库 第一步:假如可以连接局域网的数据库 192.168.150.129 ...

  2. 在&period;Net中进行SQL Server数据库备份与还原操作实用类

    #region 类说明 //----------------------------------------------------------------------------- // // 项目 ...

  3. 1433端口无法连接(sql server 数据库无法访问问题)解决思路

    登录远程SQL服务器一 看ping 服务器IP能否ping通. 这个实际上是看和远程sql server 2000服务器的物理连接是否存在.如果不行,请检查网络,查看配置,当然得确保远程sql ser ...

  4. SQL server数据库端口访问法

    最近数据库连接,也是无意中发现了这个问题,数据库可根据端口来连接 我用的是sql2014测试的,在安装其他程序是默认安装了sql(sql的tcp/ip端口为xxx),服务也不相同,但是由于比较不全,我 ...

  5. Sql Server数据库对象访问权限控制

    以下内容主要针对database层面的数据访问权限(比如select, insert, update, delete, execute…) 1.直接给user权限GRANT EXECUTE TO [u ...

  6. C&num;面试题(转载) SQL Server 数据库基础笔记分享(下) SQL Server 数据库基础笔记分享(上) Asp&period;Net MVC4中的全局过滤器 C&num;语法——泛型的多种应用

    C#面试题(转载) 原文地址:100道C#面试题(.net开发人员必备)  https://blog.csdn.net/u013519551/article/details/51220841 1. . ...

  7. SQL Server 数据库基于备份文件的【一键还原】

    1. 备份与还原的基础说明 我们知道在DBA的日常工作中,SQL Server 数据库的恢复请求偶有发生,可能是用作数据的追踪,可也可能能是数据库的灾难恢复. 数据库常用的备份命令如下: ----完整 ...

  8. TransactionScope事务处理方法介绍及&period;NET Core中的注意事项 SQL Server数据库漏洞评估了解一下 预热ASP&period;NET MVC 的VIEW &lbrack;AUTOMAPPER&rsqb;反射自动注册AUTOMAPPER PROFILE

    TransactionScope事务处理方法介绍及.NET Core中的注意事项   作者:依乐祝 原文链接:https://www.cnblogs.com/yilezhu/p/10170712.ht ...

  9. 找到MVC框架中前端URL与后端同步的解决方案

    基本思路: 先用URL标签生成完整的URL字符,前端动态参数的部分以适配符先填充,最后动态参数利用正则匹配进行替换. 这种方式,可以在各种MVC框架中适用,妙. 不废话,上码. var url = & ...

随机推荐

  1. iOS 自定义导航栏 和状态栏

    一.更改状态栏颜色 (StatusBar) 就是比如导航栏是红色的状态栏是绿色的. 要实现这样的效果其实很简单,就是添加一个背景view. 简单的实现过程如下: 1 // 设置导航颜色 可用 2 [s ...

  2. 关于mvc 分页的 这两个结合着用

    http://www.cnblogs.com/JackFeng/archive/2010/01/25/JackFeng.html http://www.webdiyer.com/mvcpager/de ...

  3. HDu 5433 Xiao Ming climbing &lpar;BFS&rpar;

    题意:小明因为受到大魔王的诅咒,被困到了一座荒无人烟的山上并无法脱离.这座山很奇怪: 这座山的底面是矩形的,而且矩形的每一小块都有一个特定的坐标(x,y)和一个高度H. 为了逃离这座山,小明必须找到大 ...

  4. linux中的文件结构

    linux下的文件结构,看看每个文件夹都是干吗用的 /bin 二进制可执行命令 /dev 设备特殊文件 /etc 系统管理和配置文件 /etc/rc.d 启动的配置文件和脚本 /home 用户主目录的 ...

  5. python threading 模块来实现多线程

    以多线程的方式向标准输出打印日志 #!/usr/bin/python import time import threading class PrintThread(threading.Thread): ...

  6. 直接请求转发&lpar;Forward&rpar;和间接请求转发&lpar;Redirect&rpar;两种区别&quest;

    用户向服务器发送了一次HTTP请求,该请求肯能会经过多个信息资源处理以后才返回给用户,各个信息资源使用请求转发机制相互转发请求,但是用户是感觉不到请求转发的.根据转发方式的不同,可以区分为直接请求转发 ...

  7. &lbrack;Swift&rsqb;LeetCode317&period; 建筑物的最短距离 &dollar; Shortest Distance from All Buildings

    You want to build a house on an empty land which reaches all buildings in the shortest amount of dis ...

  8. 用Java实现图片验证码功能

    一.什么是图片验证码? 可以参考下面这张图: 我们在一些网站注册的时候,经常需要填写以上图片的信息. 1.图片生成实体类: package com.hexianwei.graphic; import ...

  9. 我的代码-unsupervised learning

    # coding: utf-8 # In[1]: import pandas as pdimport numpy as npfrom sklearn import treefrom sklearn.s ...

  10. centos7如何安装部署Zabbix

    参考http://www.cnblogs.com/momoshouhu/p/8041293.html 1.关闭selinux和firewall 1.1检测selinux是否关闭 [root@local ...