asp.net-mvc - 简单的 CRUD 应用程序,我需要控制器中的帮助
问题描述
我完成了我的简单 CRUD MVC Web 应用程序,它运行良好,但我的老师说控制器是简单的代码,我需要修复它。他提到了上下文,但我不明白他的意思。
如果有人可以帮助我,我会上传我的代码图片,我是一个大初学者。
using GasStation.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
namespace GasStation.Controllers
{
public class HomeController : Controller
{
public ActionResult Index(
{
return View();
}
public ActionResult GetOrders()
{
using (MyDatabaseEntities dc = new MyDatabaseEntities())
{
var orders = dc.Orders.OrderBy(a => a.FirstName).ToList();
return Json(new { data = orders },
JsonRequestBehavior.AllowGet);
}
}
[HttpGet]
public ActionResult Save(int id)
{
using (MyDatabaseEntities dc = new MyDatabaseEntities())
{
var v = dc.Orders.Where(a => a.OrderID == id).FirstOrDefault();
return View(v);
}
}
[HttpPost]
public ActionResult Save(Order emp)
{
bool status = false;
if (ModelState.IsValid)
{
using (MyDatabaseEntities dc = new MyDatabaseEntities())
{
if (emp.OrderID > 0)
{
var v = dc.Orders.Where(a => a.OrderID ==
emp.OrderID).FirstOrDefault();
if (v != null)
{
v.FirstName = emp.FirstName;
v.LastName = emp.LastName;
v.FuelType = emp.FuelType;
v.Quantity = emp.Quantity;
v.City = emp.City;
v.Address = emp.Address;
}
}
else
{
dc.Orders.Add(emp);
}
dc.SaveChanges();
status = true;
}
}
return new JsonResult { Data = new { status = status } };
}
[HttpGet]
public ActionResult Delete (int id)
{
using (MyDatabaseEntities dc = new MyDatabaseEntities())
{
var v = dc.Orders.Where(a => a.OrderID ==
id).FirstOrDefault();
if (v != null)
{
return View(v);
}
else
{
return HttpNotFound();
}
}
}
[HttpPost]
[ActionName("Delete")]
public ActionResult DeleteOrder(int id)
{
bool status = false;
using (MyDatabaseEntities dc = new MyDatabaseEntities())
{
var v = dc.Orders.Where(a => a.OrderID ==
id).FirstOrDefault();
if (v != null)
{
dc.Orders.Remove(v);
dc.SaveChanges();
status = true;
}
}
return new JsonResult { Data = new { status = status } };
}
}
}
解决方案
推荐阅读
- python - 如何从列表中收集范围?
- php - Nginx 配置 - 提供 php 文件
- scala - 如何保存 websocket 客户端的连接并稍后使用 akka-streams 和 akka-http 发送
- elasticsearch - 如何在 ElasticSearch 的数组中搜索单独的键和值字段?
- python - Cybersource soap 工具包 api 避免在 3rd 方域上重定向
- swift - 无法将字符串保存到 CoreData
- github - 为什么缩小的生产 JS 文件不完整?
- neo4j - neo4j:直到结束才遵循关系
- node.js - 在 protobuf.js 中解码消息数组
- powershell - Azure Powershell 脚本忽略 defaultValue