using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MVC
{
class Program
{
static void Main(string[] args)
{
//App_Data:存储数据库文件或其他数据文件
//App_Start:文件夹包含数据控制器和动作的路由定义
//Controllers:控制器,在这个文件夹中添加响应用户请求的控制器类
//Models:用于数据类,如EF
//Views:包含视图通常是html代码
//用户发起http请求》服务器收到请求,根据路由(Routing)定义调用控制器》控制器负责返回一个视图结果
//Web应用程序启动调用Application_Start()方法。该方法会调用RegisterRoutes()方法,名为Default是默认路由
//路由三部分组成 控制器、动作、参数
//可以通过constraints设置路由规则,正则。
#region 返回结果
//返回结果
// return HttpUtility.HtmlEncode("Hello,"+name)
// return x+y
// return Content("Hello World","text/plain")
// return Json(m,JsonRequestBehavior.AllowGet)
// return Redirect("www.xxxx.com")
// return RedirectToRoute(new {controller="Home",action="Hello"})
// return File("~/xxxx/xxx/xxx.ipg","xxxx/ipg")
#endregion
#region 向视图传递数据
//ViewDataDictionary:该字段以字符串的形式存储键,并允许对象值
//ViewData["xxx"]="Hello"
//View.MyData="Hello "; html:@View.MyData
#endregion
#region Razor语法
//直接html中@ViewBag.Mydata
//@foreach
//直接在前端写c#代码
#endregion
#region 强类型视图
//使用ViewBag向视图传递数据只是一种方式。
//另一种方式是向视图传递模型,这样可以创建强视图类型
//后端:
//var menus = new List<Menu> {
//new Menu{ },
//new Menu { },
//new Menu { }
//};
//return menus;
//前端:
//@using MVCSampleApp.Models
//@model IEnumerable<Menu>
#endregion
#region 布局
//可以使用布局页,标记一些通用的模块
//使用分区
//部分视图
//使用服务器端代码中的部分视图
//从控制器中返回部分视图
//在Jquery中调用部分视图
#endregion
#region 从客户端提交数据
#endregion
#region 注释和验证
//CompareAttribute:比较不同属性
//CreditCardAttribute:验证信用卡
//EmailAttribute:电子邮箱
//EnumDataTypeAttribute:验证输入和枚举值
//PhoneAttribute:验证手机号
#endregion
#region HTML Helper
#endregion
#region 身份验证和授权
#endregion
}
}
}
42: ASP.NET MVC
最新推荐文章于 2024-10-02 07:55:04 发布
本文深入探讨了ASP.NET MVC框架的核心组件和工作流程,包括路由定义、控制器、模型、视图以及数据传递。重点讲解了如何通过控制器响应HTTP请求,返回不同类型的响应结果,如HTML、JSON或重定向。同时,介绍了Razor语法、强类型视图以及布局和部分视图的使用。此外,还提及了数据验证和路由约束。
摘要由CSDN通过智能技术生成