网站开发基本本步骤

mvc是一个设计模式

网站开发前台页面技术

  页面设计:Html css+Div

  页面特效:JavaScript,jQuery

oop编程核心公共技能

  c#基础语法与程序逻辑

  面向对象编程基础

  SQLServer数据库开发基础

  ADO.NET数据访问技术

网站开发后台专门技术

  asp.NET开发基础

  基于WebForm开发企业网站

  MVC框架 学习

  EF框架学习

  基于MVC+EF开发企业网站

网站运行原理

  

用户对网页进行操作,每一个操作需要动态展示数据,要把请求提交给服务器,服务器根据请求去进行处理,是要做查询,还是返回新的页面跳转,如果查询要根据关键字去数据库里进行查询,把结果返回给应用的服务器,根据数据和html代码返回给页面结果

ASP.NET开发技术组合

开发工具2010之后有了mvc4,逐渐成为企业开发的主流

vs2010开发mvc4要单独去安装相应的插件,vs2013相对成熟

aspx方式时

首先mvc开发都要在controllers里面添加控制器

在views添加与控制器相同名称的文件夹,添加视图

.NET框架组成架构

mvc 原理图解

项目文件夹和核心文件的解释-项目解决方案分析

程序中

using System.Wed;//ASP.NET核心命名空间

using SYStem.Web.MVC;//MVC框架进本的命名空间

控制器(controller)可以接受用户的请求,把相应的数据返回给视图

所有的类都继承自controller

其中controllerbase是控制器基类,所有的以I开头的都是接口

一个类可以继承一个基类,但是可以继承好多的接口,

面相对像三大特点(多态)

  接口类型作为返回值

  父类类型作为返回值

  接口类型作为参数

  父类类型作为参数

控制器的任务

(1)获取数据:接受请求的数据

(2)业务处理:和model交互。。。。该返回什么返回什么

(3)返回视图或跳转到其它控制器

逐次查找视图

路由(RouteConfig)

 public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");//相当于平时的门卡,工作证,其实可以忽略
routes.MapRoute(
name: "Default",//路由的名称是必须要唯一的
url: "{controller}/{action}/{id}",//主要就是请求的模式
                             //第一项必须是控制器的名称
                             //第二项必须是动作方法名称
                             //第三项参数是可选的
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
          //特定的参数是一个匿名对象用来规定url的默认值
);

 

视图访问和寻址规则

在控制器使用View()方法调用视图,返回和“动作方法同名”的视图

寻址规则:view()方法默认从“views文件夹”下选寻址和控制器同名的文件

mvc中的约定

  控制器:必须以Controller结尾

  视图必须放在视图文件夹的下面并且要和控制器同名的子目录中创建

约定胜于配置

  提前规定好

  无需配置

  不遵守规则,则出错

Mvc网站开发知识的更多相关文章

  1. ASP.NET MVC 网站开发总结(三) ——图片截图上传

    本着简洁直接,我们就直奔主题吧,这里需要使用到一个网页在线截图插件imgareaselect(请自行下载). 前台页面: <!DOCTYPE html> <html> < ...

  2. ASP.NET MVC 网站开发总结(六)——简谈Json的序列化与反序列化

    首先,先简单的谈一下什么是序列化与反序列化,序列化 (Serialization)将对象的状态信息转换为可以存储或传输的形式的过程.在序列化期间,对象将其当前状态写入到临时或持久性存储区.以后,可以通 ...

  3. ASP.NET MVC 网站开发总结(四)——校友平台开发总结

    又历经一个多月的努力,学校的一个校友平台项目也接近内测的尾声了,简单的总结一下这次的项目开发. 与上次做Wing工作室的门户网站相比,同样是团队开发,参与的人员多了一个,用的时间也差不多一个月,但从总 ...

  4. ASP.NET MVC 网站开发总结(一)

    历经一个多月的努力,工作室的门户网站(http://www.wingstudio.org)终于结束了内部公测. 仔细算一下,大概把网站开发出1.0版本大概用了一个月的时间(主要是利用课余时间),其后大 ...

  5. ASP.NET MVC 网站开发总结(五)——Ajax异步提交表单之检查验证码

    首先提出一个问题:在做网站开发的时候,用到了验证码来防止恶意提交表单,那么要如何实现当验证码错误时,只是刷新一下验证码,而其它填写的信息不改变? 先说一下为什么有这个需求:以提交注册信息页面为例,一般 ...

  6. .Net Core MVC 网站开发(Ninesky) 2.3、项目架构调整-控制反转和依赖注入的使用

    再次调整项目架构是因为和群友dezhou的一次聊天,我原来的想法是项目尽量做简单点别搞太复杂了,仅使用了DbContext的注入,其他的也没有写接口耦合度很高.和dezhou聊过之后我仔细考虑了一下, ...

  7. .Net Core MVC 网站开发(Ninesky) 2.2、栏目管理功能-System区域添加

    在asp或asp.net中为了方便网站的结构清晰,通常把具有类似功能的页面放到一个文件夹中,用户管理功能都放在Admin文件夹下,用户功能都放在Member文件夹下,在MVC中,通常使用区域(Area ...

  8. .Net Core MVC 网站开发(Ninesky) 2.4、添加栏目与异步方法

    在2.3中完成依赖注入后,这次主要实现栏目的添加功能.按照前面思路栏目有三种类型,常规栏目即可以添加子栏目也可以选择是否添加内容,内容又可以分文章或其他类型,所以还要添加一个模块功能.这次主要实现栏目 ...

  9. ASP.NET MVC 网站开发总结(七)——C#操作图片:多张图的拼接(旋转)

    其实用C#来操作图片的拼接就是在用Graphic画图.个人感觉还是挺有趣的,各种类库提供了丰富多彩的功能. 源代码(移植到一个简单的C#程序中,并没有放在ASP.NET项目中): using Syst ...

随机推荐

  1. linux 下的sublime

    Sublime Text 2 的安装 : 在官方网站下载Linux版本  Or  执行 #  wget http://c758482.r82.cf2.rackcdn.com/Sublime%20Tex ...

  2. webdriver 操作 Firefox 在关闭浏览器时弹出 “Plugin Container for Firefox已停止工作” 处理办法。

    上来先来一个图: 在使用webdriver操作Firefox浏览器的时候,一路顺畅.可是在最后关闭浏览器后,出现了如上面图示的警告!这个警告很早就出现了,因为也不影响测试结果,也就一直没理. 后来新搭 ...

  3. Apache支持.htaccess配置方法

    打开httpd.conf文件用文本编辑器打开后,查找  代码如下 复制代码 Options FollowSymLinks AllowOverride None 改为: Options FollowSy ...

  4. CUDA编程-(1)Tesla服务器Kepler架构和万年的HelloWorld

    结合CUDA范例精解以及CUDA并行编程.由于正在学习CUDA,CUDA用的比较多,因此翻译一些个人认为重点的章节和句子,作为学习,程序将通过NVIDIA K40服务器得出结果.如果想通过本书进行CU ...

  5. hdoj 2036 改革春风吹满地

    改革春风吹满地 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Sub ...

  6. PTA 07-图5 Saving James Bond - Hard Version (30分)

    07-图5 Saving James Bond - Hard Version   (30分) This time let us consider the situation in the movie ...

  7. sql中时间的一些特殊转换

    1.修改时间的秒和微秒 create table a (Dtime datetime);insert into aselect '2013-08-30 17:59:35' union allselec ...

  8. PHP面试题三

    1.nginx使用哪种网络协议? nginx是应用层 我觉得从下往上的话 传输层用的是tcp/ip 应用层用的是http fastcgi负责调度进程 2. <? echo 'hello tush ...

  9. PAT 1014. Waiting in Line

    Suppose a bank has N windows open for service.  There is a yellow line in front of the windows which ...

  10. 【Android - 基础】之Dialog分类及使用

    1.确定取消对话框 代码: // 使用AlertDialog.Builder初始化对话框 AlertDialog.Builder builder0 = new AlertDialog.Builder( ...