• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
ASP.Net MVC2 简介
 

ASP.Net MVC2 简介

on

  • 499 views

 

Statistics

Views

Total Views
499
Views on SlideShare
497
Embed Views
2

Actions

Likes
0
Downloads
3
Comments
0

1 Embed 2

http://www.linkedin.com 2

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    ASP.Net MVC2 简介 ASP.Net MVC2 简介 Presentation Transcript

    • AllenLSYallenlsy.com
    •  知道Visual studio 是做什么的 对网站开发有一点了解 对MVC架构有个大概的了解(CSC207) 了解一点Design Pattern的东西会更好 (CSC207) html, javascript有一定了解(CSC302) 编程语言的理论知识有一定了解(CSC301)
    •  1. C# 语言的发展和特性 2. ASP.net WebForm 3. ASP.net MVC2 4. 安全 5. ASP.net网站扩建和优化
    • C# 3.0C# 4.0
    •  2000,为.net framework量身定做  .net framework是2002年随着Visual Studio .NET 出的第一版 与Java相比  运算符重载  代理  强类型和弱类型都支持
    •  新特性  Extension Methods  Lambda Expression  LINQ I know how it works because I know why it works
    •  如果要为类添加一些函数,怎么办?  Partial class(Java没有这功能) 如果要为基础类添加一些函数,怎么办?  C# 1.0, 2.0: Static methods  C# 3.0: Extension MethodsExtensionMethods.cs输出:YSLnellA
    •  如何将一个List排序? public virtual void Sort( IComparer comparer )  C# 1.0 如何实现?实现接口  C# 2.0 如何实现?Anonymous Methods  C# 3.0 如何实现?Lambda Expression lambda.cs
    •  如何从一个数组中找符合某些条件的元素? 比如我想找最便宜的关于LINQ的书linq.cs
    •  C# 2.0: Imperative programming 命令式编程 C# 3.0: Declarative Programming 声明式编 程
    • ASP.net 和 ASP.net MVC 的比较ASP.net 特色功能
    •  ASP.net WebForm > ASP.net MVC 很多技术细节不一样,后面详述
    •  M: Model, V: View, P: Presenter
    •  为什么MVP好一些,微软还是要再做一个 MVC框架呢?
    •  Security 安全机制 Membership 成员关系 Caching 缓存
    •  表单认证 Windows认证
    •  自动创建了管理用户的数据库 提供了安全控件,比如登陆控件,找回密 码控件,登录状态控件等等 提供角色管理
    •  用于缓存从服务器中检索出来的内容,以 提高网站的访问性能。 memcached也实现了相关功能
    • ASP.net 和 ASP.net MVC 的比较ASP.net 特色功能
    •  Model的功能  保证数据存取的完整和正确 建立数据库 使用LINQ to SQL,或者Entity framework, 再加上自己的代码,建立Model层 加入各种限制标签,用于数据验证之类的
    •  View的功能  接受要显示的数据,并把它显示出来
    •  Controller的功能  保证业务逻辑正确
    •  ASP.net 与 MVC的最大不同  Routing vs URLRewriting ▪ Routing更强大 ▪ 匹配规则 ▪ 约束
    •  到RouteTable去匹配,找到Controller和 Action 检查是否能够调用这个Action  get/post ?  authenticated ? authorized ?
    •  Tweeter  用户可以登录,发微博。没登陆的用户必须先登录  用户先登录,然后进入微博页面。在微博页面能看 到自己的所有微博 Database  - Users, Tweets URL请求  /:显示首页  /User:显示用户首页,里面包含tweet界面, tweets list
    • 常见攻击方式XSS
    •  用户输入的html标签要过滤掉 不要对任何人不加检查的使用html输入。 比如白名单,因为其身份容易被盗用
    •  SQL注入攻击 Cookie窃取 分布式拒绝服务攻击 DDOS 跨站脚本攻击 XSS
    •  跨站脚本攻击有两个类型  被动攻击 ▪ 用户输入中有恶意脚本,将这一信息保存到服务器数 据库。别的用户看着段信息时就被攻击了  主动攻击 ▪ 直接把信息推到用户端
    •  No blog! Sorry :<
    • <a href=“No Blog! Sorry :<“>Rob Conery</a>“><iframesrc=“http://haha.juvenilelamepranks.example.com” height=“400” width=“500”/>
    • <a href=““><iframe src=“http://haha.juvenilelamepranks.example.com”height=“400” width=“500”/>“>Rob Conery</a>
    • “></a><script src=“…”></script><a href=“
    • Database OptimizationWeb farmingCachingSEOEmail
    •  扩建之前可能用到的工具  依赖注入工具 Dependency injection,也叫做控 制反转 Inversion of Control ▪ StructureMap  日志工具 ▪ Log4net  测试工具 ▪ NUnit, RhinoMocks
    •  小型网站扩建到中型网站时需要做的工作  Database Optimization  Web farming  Caching  SEO  Email
    •  Flagging rather than deleting Indexing
    •  把常用的东西放在服务器的RAM中,而不 是数据库 Memcached支持asp.net
    •  缓存和Indexing的不足 SQL Server有全文索引技术 Lucene.net
    •  从网站发送邮件很慢,对于每封邮件都需 要链接smtp服务器,并且等待。 建立一套独立的系统,系统中实现了一个 Queue。系统会在网站较为空闲时发这封邮 件。
    •  C# 部分  CSharp 4 Nutshell ASP.net 部分  Wrox. Professional ASP.NET.3.5.SP1  ASP.NET.3.5.Social Networking  Beginning ASP.net 3.5 in C# 2008 from novice to professional ASP.net MVC 部分  Professional ASP NET MVC2  Web开发新体验ASP.NET.3.5.MVC架构与实战  Programming.Microsoft.ASP.NET.MVC
    •  软件工程思想 部分  设计模式:可复用面向对象软件的基础  Agile Software Development  Code Complete  重构:改善既有代码的设计