博文
ASP.NET MVC 音乐商店 - 4. 数据访问(2011-12-11 21:50:00)
摘要:转载自思胜.net培训高级讲师郝冠军博客http://www.cnblogs.com/haogj/archive/2011/11/08/2241710.html
上一次,我们使用了模拟的数据从控制器发送到视图模板。现在,我们开始使用真正的数据库,在这个教程中,我们将指导如何使用 SQL Server Compact
版的数据库,它经常被称为 SQL CE, 来作为数据库引擎,SQL CE
是一个免费的,嵌入式的,基于文件的数据库系统,不需要任何的安装或者配置,很适合本地的开发使用。
注意:可能需要单独安装 SQL Server Compact 4.0 数据库以及 Entity
Framework。在我的机器上,这两个软件都是单独安装的。
当然,你还可以使用熟悉的 SQL Server 数据库。
Microsoft SQL Server Compact 4.0
Microsoft SQL Server Compact 4.0 是一种免费的嵌入式数据库,也就是说,你不需要安装数据库系统。软件开发人员可以使用它来构建
ASP.NET 网站和 Windows 桌面应用程序。SQL Server Compact 4.0
的优点是:占用的空间小,支持在应用程序文件夹中专门部署其二进制文件,轻松地使用 Visual Studio 和 WebMatrix
进行应用程序开发,以及无缝地将架构和数据迁移到 SQL Server。
SQL Server Compact 4.0 安装文件的下载地址:http://www.microsoft.com/downloads/zh-cn/details.aspx?familyid=033cfb76-5382-44fb-bc7e-b3c8174832e2&displaylang=zh-cn
不过,你完全可以不使用这个数据库,还继续使用原来的 SQL Server, 在我的机器上,我不能直接使用服务器资源管理器来查看 SQL CE 4
的的数据。如果使用原来的 SQL Server 就不会有这个问题了。
ADO.NET Entity Framework 4.1
EF 4.1有哪些新玩新儿?
1. 首先当然是DbContext
API,它是基于以前版本中的ObjectContext和其他一......
ASP.NET MVC 音乐商店 - 3. 视图与模型(2011-12-07 00:18:00)
摘要:
转载自思胜.net培训高级讲师郝冠军博客http://www.cnblogs.com/haogj/archive/2011/11/08/2241710.html
上一篇中有同学提到为什么不使用视图,而使用字符串,这一篇我们就开始使用视图来处理。我们已经可以从控制器的 Action 中返回一个字符串,这可以帮助我们更好地理解 Controller 是如何工作的。但是对于创建一个 Web
程序来说还是不够的。下面我们使用更好的方法来生成 HTML,主要是通过模板来生成需要的 HTML,这就是视图所要做的。
增加视图模板
为了使用视图模板,我们需要将HomeController 中的 Index 这个 Action 的返回类型修改为
ActionResult,然后,让它像下面一样返回一个视图。
public class HomeController : Controller
{
//
// GET: /Home/
public ActionResult Index()
{
return View();
}
}
上面的修改表示我们将使用视图来替换掉原来的字符串,以便生成返回的结果。
现在为我们的项目增加一个视图,为达到这个目的,我们将光标移到 Index
方法内,然后,点击鼠标的右键,在右键菜单中选择“添加视图(D)…”,这样将会弹出增加视图的对话框。
添加视图的对话框允许我们快速,简单地创建一个视图模板,默认情况下,视图的名称使用当前 Action 的名字。因为我们是在 Index 这个 Aciton
上添加模板,所以添加视图对话框中,视图的名字就是 Index,我们不需要修改这个名字,点击添加。
在点击添加之后,Visual Studio 将会创建一个名为 Index.cshtml的视图模板,放置在 \Views\Home
目录中,如果没有这个目录,MVC 将会自动创建它。
Index.cshtml 所在文件夹的名称和位置是很重要的,它是根据ASP.NET MVC 的约定来指定的。目录名称 \Views\Home
,匹配的控制器就是 HomeController ,视图模板的名字 Index,匹配将要使......
ASP.NET MVC 音乐商店 - 2.控制器(2011-12-05 23:48:00)
摘要:转载自思胜.net培训高级讲师郝冠军博客http://www.cnblogs.com/haogj/archive/2011/11/08/2241710.html
在典型的 Web 应用中,用户请求的 URL 地址通常映射到保存在网站中的文件上,例如,当用户请求 /Products.aspx 的时候,或者
/Products.php 的时候,很可能是在通过处理 Products.aspx 或者 Products.php 文件来完成任务。
ASP.NET MVC 的处理方式则不同,它没有映射到文件上,相反,将这些 URL 地址映射到类的方法上,这些类被称为“控制器”,控制器用来接受 HTTP
请求,处理用户的输入,获取或者保存数据,其中的处理方法称为 Action,然后将回应发送到客户端,可能是显示了一个 HTML
的网页,下载一个文件,重定向到另外一个地址等等。
默认的路由配置
在新创建的项目中,打开 Global.asax.cs 文件,可以看到如下的代码。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;
namespace MvcMusicStore
{
// 注意: 有关启用 IIS6 或 IIS7 经典模式的说明,
// 请访问 http://go.microsoft.com/?LinkId=9394801
public class MvcApplication : System.Web.HttpApplication
{
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new HandleErrorAttribute());
}
public static void RegisterRoutes(RouteCollection rout......
ASP.NET MVC 音乐商店 - 1 创建项目(2011-12-04 23:50:00)
摘要:转载自思胜.net培训高级讲师郝冠军博客http://www.cnblogs.com/haogj/archive/2011/11/08/2241710.html
我们的项目从在 Visual Studio 中的文件菜单中选择“新建”,选择“项目”开始。
然后,选择 C# 中的 Web 模板组,在右边的项目模板中选择 ASP.NET MVC3 Web 应用程序,在项目的名称输入框中,输入
MvcMusicStore ,点击确定。
这时,你会到第二个对话框,允许我们设置这个项目关于 MVC 的一些设置,确认选中了“空”项目模板,视图引擎选中 Razor ,点击确定。
这样我们的项目就创建成功了!
我们看一下在这个项目都创建了哪些内容。
在 ASP.NET MVC 中使用了下面的一些基本的命名约定
文件夹
功能
/Controllers
控制器接受来自浏览器的请求,进行处理,然后向用户返回回应
/Views
视图文件夹保存用户界面的模板
/Models
这个文件夹定义处理的数据
/Content
我们的图片,CSS以及其他任何的静态内容放在这里
/Scripts
放置脚本文件
/App_Data
数据库文件
这些文件夹在一个空的 ASP.NET MVC 应用中也会存在,因为 ASP.NET MVC
的框架默认使用“约定胜于配置”的原则,已经假定这些文件夹有着特定的用途。例如,控制器将会在 Views
文件夹中寻找相应的视图,而不需要你在代码中显式设置,这样可以节省大量的编程工作,也可以使其他的开发人员更加容易理解你的程序。在创建这个程序的过程
中,我们将会详细的说明这些约定。
......
ASP.NET MVC 音乐商店 - 0 概览(2011-12-04 08:23:00)
摘要:这是一个系列文章,原文内容出自微软的 MusicStore。
首先对原文内容进行了简单的翻译,以方便大家参考,另外对于其中的部分内容,也进行了简单的分析,使用的 Visual Studio
也换成了中文版,这样大家看起来也更亲切一些。
下载地址:http://mvcmusicstore.codeplex.com/
MVC 音乐店是用来介绍和展示使用 ASP.NETMVC 以及 Visual Studio 进行 Web
开发的示例应用程序,我们将从基础知识开始,一步一步地进行介绍,因此,初学者也可以去的很好的学习体验。
这个示例程序使用 ASP.NET MVC3 完成,视图部分使用 Razor 引擎,数据库访问使用 EF
CodeFirst。
这个程序将会创建一个音乐商店,这个程序包括三个主要的部分:购物,结账和管理。
用户可以通过分类浏览唱片。
可以查看某张唱片,然后加入到购物车中。
可以查看购物车,删除其中不再希望购买的项目。
在结账的时候,就会提示用户登录,或者注册一个新的账号。
创建新帐号
创建账号之后,用户可以填写完整的送货和结账信息,为了让这个程序简单一些,如果你在优惠券号中输入 FREE 的话,我们会提示一切免费。
下完订单之后,用户会看到一个简单的确认提示。
另外,我们还会提供一个管理员用来创建、修改、以及删除唱片的功能。
这个项目我们将使用 ASP.NET MVC3 和 Visual Studio 完成。其中的知识涉及到数据访问,表单的提交,数据验证,母版页,布局,以及
AJAX 的更新和验证,用户的登录等等。......
热烈祝贺郝老师评为2011年10月微软最有价值专家(MVP)(2011-10-17 11:37:00)
摘要:
热烈祝贺郝老师评为2011年10月微软最有价值专家(MVP)
Microsoft Most Valuable Professional微软
微软最有价值专家(MVP) 是指具备一种或多种微软技术专业知识,并且积极参与在线或离线的社群活动,经常与其他专业人士分享知识和专业技能,受人尊敬、信任,而且平易近人的专家。
实际生活中,人们总是信任专家的建议和反馈。MVP正是这样一群拥有丰富知识和实际经验的微软技术专家。他们不是微软的员工,但是非常乐于通过在线或离线社区的方式帮助技术人士。另一方面,微软公司时刻不忘倾听来自用户的意见反馈,不断开发新产品,改进技术,提高用户体验。MVP代表来自社群的广大用户,他们的专家意见更能协助微软公司了解用户的真实需求。
Most Valuable Professionals(最有价值专家)是微软对上述专家在技术社群专业贡献的一种正式认同。该项目主要目的在于鼓励形成一个充满活力的全球性社群,使得微软和用户之间建立良好的相互关系,增进相互了解。目前主要策略为:
在全球范围内认可MVP 并建立交流渠道 - 通过跨产品、服务和行业的广大社群,嘉奖有影响力和特殊贡献的专家,并赋予他们特殊的资源和权力
贴近用户、提高体验- 认可技术专家的特殊贡献,不论他们来自哪个领域、使用何种语言,致力提高使用微软技术的亲身体验
推动项目日臻完美- 不断提高对技术专家的支持力度,在全球范围建立协调和沟通网络,增进微软和用户的相互了解
该项目已经运作了17年,在全球90多个国家拥有接近4000多位最有价值专家。
http://news.cnblogs.com/n/117471/
......
微软技术大会Tech·Ed社区之夜 (沟通. 分享. 免费参加)(2011-09-22 17:37:00)
摘要:
思胜.net培训专家
微软技术大会Tech·Ed社区之夜 (沟通. 分享. 免费参加)
对于微软技术开发者来说,今年是一个技术大年,从云服务Window Azure ,到智能终端Windows Phone,再到全新发布的Windows 8, 无时无刻都体现出“服务+ 设备”的无缝体验,Tech•Ed 2011开发者社区专场提供了一个大家交流的机会,可以畅谈技术,展望趋势,或者闲话生活。加入我们,一起探讨属于开发者的未来!
本届Tech•Ed 2011 的大会日程安排精彩纷呈,除了白天的丰富课程,Tech·Ed首次尝试推出夜间活动- Tech·Ed社区之夜。这是由社区主办的,完全免费的活动。我们取得了业界知名技术社区的鼎力支持,并将最受大家欢迎的微软技术专家邀请到社区活动现场,与广大的技术爱好者面对面零距离沟通。
其中蓝色理想 * WEB技术开发未来探索 活动由 郝老师 组织和演讲,从HTML5 css3 jquery 到后端技术 框架 云平台等与大家分享WEB技术开发未来探索!
活动详情:
日期:2011年10月12日 时间:19:00 – 21:45 地点:北京国际饭店会议中心
请大家提交以下信息,思胜.net培训统一给大家报名:
姓名: 公司: 电话: 邮箱:
联系人:张继刚 电话: 15001082883 qq:602701468
......
思胜.net培训最新实际授课视频迅雷下载地址(清晰版)(2011-09-22 10:38:00)
摘要:
思胜.net培训最新实际授课视频迅雷下载地址(清晰版)
http://dl.dbank.com/c0682vwj41
大家在学习过程中有任何技术问题可以提问到技术问题讨论版块,思胜帮大家解决,也希望各位有好的学习资源发到思胜的论坛里,大家一起学习共同进步!......
对面向对象分析与设计与实现的一些看法(2011-09-17 10:11:00)
摘要:
我对面向对象分析与设计与实现的一些看法
最近对OO的理解又有了一些新的认识,拿出来和大家分享一下。为了能让大家简单直观清晰的知道我想表达的主要意思,我不说废话了。直接提出问题,然后回答。
1. 什么是真正的对象?
2. 什么是面向对象分析阶段时的对象?
3. 什么是面向对象设计阶段时的对象?
4. 什么是面向对象实现阶段时的对象?
1. 真正的对象:
我所理解的真正的对象就是现实生活中客观存在或不存在的真正的对象。这个对象有一个明显的特征就是它具有非常多的状态特征和行为特征。比如一个人是一个对象,他在一生中会经历无数个交互场景,在这个过程中,每个人的行为特征会不断增多,大部分行为是通过后天学习得到的,只有少数行为是先天就具有的;另一方面,对于状态特征也是在时不时的变化,比如你的身高、体重,等等。最后,人因为会参与到不同的交互场景,会导致和他关联的各种关联信息也会不断增多,比如你去上大学,老师给你一张借书卡,此时你就拥有了一张借书卡,可以理解为你多了一个关联信息;哪一天你去参加英语四级考试,考了70分,然后你拥有了一本四级考试证书,上面写这成绩为70分,此时你也同样多了一个关联信息,就是一本英语四级考试证书;
这里我想表达的主要观点是:现实生活中的对象:1)兼具各种场景下的所有状态和行为特征;2)固有状态会时不时的变化,通过参与交互场景还会增加一些关联信息;3)行为会不断增多,一般是通过学习得到;因此,我们从中可以知道,现实生活中的对象肯定不是我们设计软件时候的对象,因为它是如此的复杂,包含了或关联了非常多的状态特征和行为特征;
2. 面向对象分析阶段时的对象:
既然是分析阶段,那我们就不要过多的考虑任何设计阶段的思想。我觉得在分析阶段,我们在分析对象时主要考虑两个方面:1)对象的状态特征变化规律;2)对象的行为特征变化规律;分析阶段,我们往往从某个场景出发,分析该场景中有哪些“对象”,此时的“对象”之所以加双引号是因为它不是真正的对象,而是真正的对象的某个方面,我们在某个场景下只关心对象的某个方面;我觉得分析阶段的对象和现实生活中的对象应该是一致的,或者至少是逻辑上是一致的。也就是说,在面向对象的分析阶段,我们应该将现实生活中我们所理解的对象的一切特征在脑子里描述清楚。比如同一个人,它在不同的场景下(一个场景代表了一个考虑问题的边......
人月神话介绍及pdf下载(2011-09-07 14:12:00)
摘要:人月神话介绍及pdf下载
内容简介
《人月神话》原文:The Mythical Man-Month: The Essays on Software Engineering, 2nd ed.在软件领域,很少能有像《人月神话》一样具有深远影响力并且畅销不衰的著作。
Brooks博士为人们管理复杂项目提供了最具洞察力的见解。既有很多发人深省的观点,又有大量软件工程的实践。本书内容来自Brooks博士在IBM公司System/360家族和OS/360中的项目管理经验。该书英文原版一经面世,即引起业内人士的强烈反响,后又译为德、法、日、俄中等多种语言,全球销量数百万册。确立了其在行业内的经典地位。
在本书第一次出版32年后的今天,我们重新整理了Brooks博士的经典内容,并将国内软件开发领域先行者们对《人月神话》中的实践及系统理论的使用经验和心得集结成册与大家共享,更使本书成为国内从业者的必读经典之一。
作者简介
Frederick P.Brooks,Jr.曾荣获美国计算机领域最具声望的图灵奖(A.M.Turing Award)桂冠。美国计算机协会(ACM)称赞他“对计算机体系结构、操作系统和软件工程作出了里程碑式的贡献”。
Brooks博士是北卡罗莱纳大学Kenan-Flagler商学院的计算机科学教授。他被认为是“IBM 360系统之父”,曾担任360系统的项目经理,以及360系统项目设计阶段的经理。凭借在此项目中的杰出贡献,他与Bob Evans和Erich Bloch在1985年荣获了美国国家技术奖(National Medal of Technology)。Brooks博士早期曾担任IBM公司Stretch和Harvest计算机的体系结构设计师。
Brooks博士创立了北卡罗莱纳大学的计算机科学系,并在1964~1984年期间担任系主任。他还曾任职于美国国家科技局和国防科学技术委员会。Brooks博士目前的教学和研究方向是计算机体系结构、分子模型绘图和虚拟环境设计。
媒体推荐书评
各路英豪品评人月实践
软工经典再启江湖争论
汇集国内软件开发领域先行者们对《人月神话》中的实践及系统理论的使用经验和心得!
Frank Chance
介绍
出版于19......
