ASP.NET MVC学习笔记--基础知识2

一.基础知识

ASP.NET MVC是一种基于ASP.NET的Web应用程序开发框架,它采用了MVC(Model-View-Controller)的设计模式,使得开发人员可以更加方便地开发Web应用程序

1. MVC设计模式

MVC设计模式是一种将应用程序分为三个部分的设计模式,分别是模型(Model)、视图(View)和控制器(Controller)。模型负责处理数据,视图负责展示数据,控制器负责处理用户的请求并调用相应的模型和视图。

2. ASP.NET MVC框架

ASP.NET MVC框架是基于MVC设计模式的Web应用程序开发框架,它提供了一系列的类和方法,使得开发人员可以更加方便地开发Web应用程序。ASP.NET MVC框架包括控制器、视图、模型绑定、路由等组件。

3. 控制器

控制器是ASP.NET MVC框架中的一个组件,它负责处理用户请求调用相应模型和视图。控制器可以通过继承Controller类来创建,它包含了一系列的方法,如Index、Create、Edit等,用于处理不同的请求。

4. 视图

视图是ASP.NET MVC框架中的一个组件,它负责展示数据。视图可以通过Razor语法来创建,Razor语法是一种将HTML和C#代码混合在一起的语法,使得开发人员可以更加方便地创建视图。

5. 模型绑定

模型绑定是ASP.NET MVC框架中的一个组件它负责将用户提交的数据绑定到模型中。模型绑定可以通过ModelBinder类来实现,它可以将用户提交的数据转换为模型中的属性值。

6. 路由

路由是ASP.NET MVC框架中的一个组件,它负责将用户的请求映射到相应的控制器和方法上。路由可以通过RouteConfig类来配置,它包含了一系列的路由规则,用于匹配用户的请求。

二,补充点

1.控制器的Index、Create、Edit方法通常用于实现对数据的增删改查操作。

Index方法用于显示数据列表,一般会从数据库中获取数据并将其传递给视图进行展示。示例代码如下:

```csharp
public ActionResult Index()
{
    var data = db.MyTable.ToList();
    return View(data);
}
```

Create方法用于创建新的数据记录,一般会在视图中显示一个表单,用户填写表单后提交数据。示例代码如下:

```csharp
public ActionResult Create()
{
    return View();
}

[HttpPost]
public ActionResult Create(MyModel model)
{
    if (ModelState.IsValid)
    {
        db.MyTable.Add(model);
        db.SaveChanges();
        return RedirectToAction("Index");
    }
    return View(model);
}
```

Edit方法用于编辑已有的数据记录,一般会在视图中显示一个表单,预填充表单数据并允许用户修改。示例代码如下:

```csharp
public ActionResult Edit(int id)
{
    var model = db.MyTable.Find(id);
    if (model == null)
    {
        return HttpNotFound();
    }
    return View(model);
}

[HttpPost]
public ActionResult Edit(MyModel model)
{
    if (ModelState.IsValid)
    {
        db.Entry(model).State = EntityState.Modified;
        db.SaveChanges();
        return RedirectToAction("Index");
    }
    return View(model);
}
```

2.路由

ASP.NET MVC 路由是指将 URL 请求映射到相应的控制器和操作方法的过程。在 ASP.NET MVC 中,路由是通过 RouteConfig类来管理的。在 RouteTable 中,可以添加多个路由规则,每个路由规则都包含一个 URL 模式和一个处理程序

当一个请求到达 ASP.NET MVC 应用程序时,路由系统会根据请求的 URL 和路由规则进行匹配,如果找到匹配的路由规则,则会将请求转发到对应的控制器和操作方法进行处理。如果没有找到匹配的路由规则,则会返回 404 错误。

ASP.NET MVC 路由的 URL 模式可以包含静态部分动态部分。静态部分是指 URL 中不会变化的部分,动态部分是指 URL 中会变化的部分,可以通过占位符来表示。例如,下面的 URL 模式中包含了一个动态部分:

```
/products/{id}
```

其中,`{id}` 表示一个占位符,可以匹配任意的数字。当请求的 URL 为 `/products/123` 时,路由系统会将其匹配到对应的控制器和操作方法,并将 `123` 作为参数传递给操作方法。

你可能感兴趣的:(asp.net,mvc,学习)