1. 安装MVC3框架

官网:http://www.asp.net/mvc

下载:ASP.NET MVC3 with Tools

http://go.microsoft.com/fwlink/?LinkID=215693

2.微软提供的MVC框架项目  http://www.asp.net/mvc/samples

下载微软提供的 MvcMusicShop 实例项目来熟悉MVC3框架,文件夹里有个*.pdf,通过pdf可以一步接着一步的做个完全和MusicShop功能一样的项目。

MusciShop例子中通过 Entity Framework 来操作数据库,并且数据库用的是 SQL companct 4.0 版本。

sql compact 类似 sqlite,移动端或者单机数据库。

实例中在程序启动后,通过代码生成 *.sdf 的数据库(sdf后缀的就是compact)。

通过MSSQL 管理器 或者VS 管理器 可以查看*.sdf里面的具体数据。

 

代码在App_Data文件夹下生成*.sdf 数据库

  1. web.config在 <connectionStrings>节点下添加  
    <add name="MusicStoreEntities"  connectionString="Data Source=|DataDirectory|MvcMusicStore.sdf" providerName="System.Data.SqlServerCe.4.0"/>
  2. 在Global.asax里面设置启动数据库;将sampleData.cs放到model中。
  3. 使用数据库:MusicStoreEntities storeDb = new MusicStoreEntities();
    var genreModel = storeDb.Genres.ToList();
                     return View(genreModel);

 

 

 

演示Razor语法和高级功能

 

public ActionResult  Index(){return view()}

public string  Index() {  return "Index()"; }

   

2)传参

public string Browse(string genre)

       {

           string message = HttpUtility.HtmlDecode("browse 传参 genre="+genre);

           return message;

       }

http://localhost:3649/store/browse?genre=<script>window.location("http://www.baidu.com");</script>      检测到有危险的input

    

sql compact  *.sdf 用sql企业管理器提示版本错误,用vs连接数据库也连接不上。因为*.sdf是4.0创建的,但是本机缺少 compact 4.0这个组件,然后重新装。

       

  

初始化数据老出现错误,,初始化3个表,每次只有第一个表能初始化成功

初始化到第二表会出现错误,尝试过很多其他办法,后来发现是因为 Model中的类 Artist 的主键属性类型写错了,应该int自增,而代码里写的是string,应当必须插入数据。而初始化的时候相反没输入id这个属性,所以错了。。。 粗心大意浪费了3个小时。

Microsoft MVC3 框架的更多相关文章

  1. .Net Mvc3框架调用服务端控件解决方案

      /*BY:Wangyexin date:2011年4月30日 20:17:38*/ /*说明:.net mvc3框架,View层调用服务端控件,输出到.cshtml文件中显示*/ 1.先说说.ne ...

  2. [C#] Microsoft .Net框架SerialPort类的用法与示例

    从Microsoft .Net 2.0版本以后,就默认提供了System.IO.Ports.SerialPort类,用户可以非常简单地编写少量代码就完成串口的信息收发程序.本文将介绍如何在PC端用C# ...

  3. 一种在MVC3框架里面设置模板页的方法,不使用_ViewStart

    1.新建MasterFilterAttribute类继承ActionFilterAttribute,重写方法OnActionExecuted ,指定ViewResult的MasterName = &q ...

  4. 用EF DataBase First做一个简单的MVC3报名页面

    使用EF DataBase First做一个简单的MVC3报名网站 ORM(Object Relational Mapping)是面向对象语言中的一种数据访问技术,在ASP.NET中,可以通过ADO. ...

  5. asp.net mvc3 的数据验证(一)

    原文:asp.net mvc3 的数据验证(一)      对于web开发人员来说,对用户输入的信息进行验证是一个重要但是繁琐的工作,而且很多开发者都会忽略.asp.net mvc3框架使用的是叫做“ ...

  6. C#之MVC3继续整理问题

    1.注释验证[EmailAddress(ErrorMessage = "×")],用的MVC3框架,此处报错,找不到类“EmailAddress”,看到原文有using Syste ...

  7. ASP.NET MVC3 Model验证总结

    ASP.NET MVC3中的Model是自验证的,这是通过.NET4的System.ComponentModel.DataAnnotations命名空间完成的. 我们要做的只是给Model类的各属性加 ...

  8. MVC WebAPI 三层分布式框架开发

    版权声明:本文为博主原创文章,未经博主允许不得转载. 前言:SOA(面向服务的架构)是目前企业应用开发过程中普遍采用的技术,基于MVC WebAPI三层分布式框架开发,以此适用于企业信息系统的业务处理 ...

  9. ASP.NET MVC3 Model验证总结(转)

    推荐:   ASP.NET MVC的Model元数据与Model模板:预定义模板 http://www.cnblogs.com/artech/archive/2012/05/02/model-meta ...

随机推荐

  1. iOS 横竖屏适配

    关于横竖屏适配 也没做过,今天读别人的源码,遇到了.为了了解清楚,就系统的学习一下. 一 横竖屏方向枚举 关于横竖屏一共有三种枚举 UIInterfaceOrientation UIInterface ...

  2. python基础里的那些为什么?

    一.执行python脚本的两种方式? 直接在解释器里编写并在解释器里执行 文件编写,并在终端通过 python 路径  这种方式执行 好,我们就以输出hello world这个例子来比较两种方式的不同 ...

  3. Python3.6全栈开发实例[015]

    15.电影投票:程序先给出几个目前正在上映的电影列表. 由用户给每个电影投票.最终将该用户投票信息公布出来 lst = ['北京遇上西雅图', '解救吴先生', '美国往事', '西西里的美丽传说'] ...

  4. python的语法规范及for和while

    1.缩进: 空白在Python中是重要的.事实上行首的空白是重要的.它称为缩进.在逻辑行首的空白(空格和制表符)用来决定逻辑行的缩进层次,从而用来决定语句的分组.这意味着同一层次的语句必须有相同的缩进 ...

  5. python模块学习(四)

    re模块 就其本质而言,正则表达式(或 RE)是一种小型的.高度专业化的编程语言,(在Python中)它内嵌在Python中,并通过 re 模块实现.正则表达式模式被编译成一系列的字节码,然后由用 C ...

  6. Kafka简介、安装

    一.Kafka简介 Kafka是一个分布式.可分区的.可复制的消息系统.几个基本的消息系统术语:1.消费者(Consumer):从消息队列(Kafka)中请求消息的客户端应用程序.2.生产者(Prod ...

  7. CSS中input输入框点击时去掉外边框方法【outline:medium;】----CSS学习

    CSS 中添加 outline:medium; JS 控制焦点: $("#CUSTOM_PHONE").focus(function(event){ // this.attr(&q ...

  8. Video标签的使用

    现在如果要在页面中使用video标签,需要考虑三种情况,支持Ogg Theora或者VP8(如果这玩意儿没出事的话)的(Opera.Mozilla.Chrome),支持H.264的(Safari.IE ...

  9. iOS 什么是函数式编程

    前言:当前只做理解性的常规背书,根据不断深入学习会不断丰富解读内容,欢迎评论提意见 函数式编程:Functional Programming 1 基本解释: 函数式编程 是一种思维模式,一种编程思想, ...

  10. Android开发之旅-Fragment和Activity之间onCreateOptionsMenu的联系

    Fragment和Activity一样,可以重写onCreateOptionsMenu方法来设定自己的菜单,其实这两个地方使用onCreateOptionsMenu的目的和效果都是完全一样的,但是由于 ...