mvc控制层Controllers增删改查方法

一、添加
[HttpPost]
public ActionResult Create(City city)
{
    if (ModelState.IsValid)
    {
        db.Citys.Add(city);
        db.SaveChanges();
        return RedirectToAction("Index");
    }

    //添加代码
    if (Request.IsAjaxRequest())
    {
         return PartialView(city);
    }
    return View(city);
}

public ActionResult Insert()
{
    var c = new City
    {
        Id = 123,
        Name = "刘德华",
        Tel = "1236545"
    };
    db.Citys.Add(c);
    db.SaveChanges();
    return RedirectToAction("Index");
}

二、修改
public ActionResult Edit(int id = 0)
{
    City city = db.Citys.Find(id);
    if (city == null)
    {
        return HttpNotFound();
    }
    return View(city);
}

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

/// <summary>
/// 修改全部
/// </summary>
/// <param name="collection"></param>
public ActionResult Update_Node(FormCollection collection)
{
    var query = db.Nodes.ToList();
    foreach (Node m in query)
    {
        m.IsShow = "Flase";
    }
    db.SaveChanges();
    return RedirectToAction("Index");
}

/// <summary>
/// 批量修改
/// </summary>
/// <param name="collection"></param>
public ActionResult Update_Node(FormCollection collection)
{
    string chkValues = Request.Form["item"];
    if(chkValues != null)
    {
        string[] strtemp = chkValues.Split(',');
        foreach (string strs in strtemp)
        {
            int nodeID = Convert.ToInt32(strs.ToString());
            Node m = this.db.Nodes.Find(nodeID);
            m.NodeID = nodeID;
            m.IsShow = "True";
        }
        db.SaveChanges();
        return RedirectToAction("Index");
    }
}

三、删除
public ActionResult Delete(int id = 0)
{
    City city = db.Citys.Find(id);
    if (city == null)
    {
        return HttpNotFound();
    }
    return View(city);
}

[HttpPost, ActionName("Delete")]
public ActionResult DeleteConfirmed(int id)
{
    City city = db.Citys.Find(id);
    db.Citys.Remove(city);
    db.SaveChanges();
    return RedirectToAction("Index");
}

四、查询
1、方法
[HttpPost]
public JsonResult Auto_Read(string term)
{
    //需要调用下面的方法“GetPublishmentSystemsList”
    return Json(GetPublishmentSystemsList(term), JsonRequestBehavior.AllowGet);
}

/// <summary>
/// 查询列表
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
private IEnumerable<PublishmentSystem> GetPublishmentSystemsList(string name)
{
    var query = from p in db.PublishmentSystems
                where p.PublishmentSystemName.Contains(name)
                select new
                {
                    Id = p.PublishmentSystemID,
                    Name = p.PublishmentSystemName,
                };

    return query.ToList().Select(C => new PublishmentSystem
    {
        PublishmentSystemID = C.Id,
        PublishmentSystemName = C.Name,
    });
}

2、方法
public ActionResult GetData(string term)
{
    var data = GetPublishmentSystem(term);
    return Json(data, JsonRequestBehavior.AllowGet);
}

public object GetPublishmentSystem(string term)
{
    return this.db.PublishmentSystems
           .Where(p => p.PublishmentSystemName.Contains(term))
           .OrderBy(p => p.PublishmentSystemName)
           .Select(p => new
           {
               value = p.PublishmentSystemID,
               label = p.PublishmentSystemName
           }).ToArray();
}
===============================================================

跳转方法
1、方法
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult LogOff()
{
    WebSecurity.Logout();
    return RedirectToAction("Index", "Home");
}

2、方法
return RedirectToAction("Manage");

3、方法
return RedirectToAction("Manage", new { Message = message });

4、方法
ModelState.AddModelError("", "当前密码不正确或新密码无效。");

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ASP.NET MVC 是一种用于创建 Web 应用程序的框架,其中包括实现增删改查等常见操作的功能。下面是一个简单的示例: 1. 创建 Model 类 在 Models 文件夹中创建一个类,用于表示要操作的数据。 ```csharp public class Person { public int Id { get; set; } public string Name { get; set; } public int Age { get; set; } } ``` 2. 创建 DbContext 类 在 Models 文件夹中创建一个继承自 DbContext 的类,用于处理数据的存储和检索。 ```csharp public class MyDbContext : DbContext { public DbSet<Person> Persons { get; set; } } ``` 3. 创建控制器类 在 Controllers 文件夹中创建一个控制器类,用于处理 HTTP 请求并调用 DbContext 的方法。 ```csharp public class PersonController : Controller { private readonly MyDbContext _context; public PersonController(MyDbContext context) { _context = context; } public IActionResult Index() { var persons = _context.Persons.ToList(); return View(persons); } public IActionResult Create() { return View(); } [HttpPost] public IActionResult Create(Person person) { if (ModelState.IsValid) { _context.Persons.Add(person); _context.SaveChanges(); return RedirectToAction("Index"); } return View(person); } public IActionResult Edit(int id) { var person = _context.Persons.FirstOrDefault(p => p.Id == id); if (person == null) { return NotFound(); } return View(person); } [HttpPost] public IActionResult Edit(int id, Person person) { if (id != person.Id) { return NotFound(); } if (ModelState.IsValid) { _context.Persons.Update(person); _context.SaveChanges(); return RedirectToAction("Index"); } return View(person); } public IActionResult Delete(int id) { var person = _context.Persons.FirstOrDefault(p => p.Id == id); if (person == null) { return NotFound(); } return View(person); } [HttpPost, ActionName("Delete")] public IActionResult DeleteConfirmed(int id) { var person = _context.Persons.FirstOrDefault(p => p.Id == id); if (person == null) { return NotFound(); } _context.Persons.Remove(person); _context.SaveChanges(); return RedirectToAction("Index"); } } ``` 4. 创建视图文件 在 Views 文件夹中创建与控制方法名相对应的视图文件,用于显示数据和接收用户输入。 Index.cshtml: ```html @model List<Person> <table> <thead> <tr> <th>Id</th> <th>Name</th> <th>Age</th> <th></th> </tr> </thead> <tbody> @foreach (var person in Model) { <tr> <td>@person.Id</td> <td>@person.Name</td> <td>@person.Age</td> <td> <a asp-action="Edit" asp-route-id="@person.Id">Edit</a> | <a asp-action="Delete" asp-route-id="@person.Id">Delete</a> </td> </tr> } </tbody> </table> <a asp-action="Create">Create New</a> ``` Create.cshtml: ```html @model Person <form asp-action="Create" method="post"> <div> <label>Name:</label> <input asp-for="Name" /> </div> <div> <label>Age:</label> <input asp-for="Age" /> </div> <button type="submit">Create</button> </form> <a asp-action="Index">Back to List</a> ``` Edit.cshtml: ```html @model Person <form asp-action="Edit" asp-route-id="@Model.Id" method="post"> <div> <label>Name:</label> <input asp-for="Name" /> </div> <div> <label>Age:</label> <input asp-for="Age" /> </div> <button type="submit">Save</button> </form> <a asp-action="Index">Back to List</a> ``` Delete.cshtml: ```html @model Person <p>Are you sure you want to delete this record?</p> <form asp-action="Delete" asp-route-id="@Model.Id" method="post"> <button type="submit">Delete</button> </form> <a asp-action="Index">Back to List</a> ``` 以上就是一个简单的 ASP.NET MVC 实现增删改查的示例。请注意,这只是一个基础示例,实际项目中可能需要处理更复杂的数据和业务逻辑。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值