Я создаю веб-приложение для продаж.Я хочу обновить количество, оставшееся на складе после ввода продаж.Я установил идентификатор для текстового поля и использую идентификатор текстового поля внутри запроса.Я считаю, что делаю это неправильно.
Пожалуйста, смотрите мой код вида и модели ниже.(Я открыт для других способов, как это сделать).
Код My View:
<div class="container" style="width:40%; margin-top:2%">
@using (Html.BeginForm("SaveSales", "Sales", FormMethod.Post))
{
@Html.DropDownListFor(model => model.Prod_id, ViewBag.SalesName as SelectList, "--Select Product--", new { id = "ProdIds", @class = "form-control" })
<br />
@Html.TextBoxFor(model => model.Unit_purchase, new { id = "quant", @class = "form-control", @placeholder = "Amount Purchase" })
<br />
@Html.TextBoxFor(model => model.Unit_price, new { @class = "form-control", @placeholder = "Unit Price" })
<br />
@Html.DropDownListFor(model =>model.Emp_id, ViewBag.EmpName as SelectList, "--select Employee--", new { @class = "form-control" })
<br />
//@Html.TextAreaFor(model => model.Dates, new{@placeholder = "Date", @type = "date", @Value = Model.Dates.ToString("yyyy-MM-dd") })
@Html.EditorFor(model => model.Dates, new { @type = "date" })
<br />
<br />
@Html.DropDownListFor(model => model.Cust_id, ViewBag.CustName as SelectList, "--Select Customer--", new { @class = "form-control" })
<br />
<input type="Submit" value=" Submit" /> <input type="reset" value=" Reset" />
}
</div>
Код моего контроллера (обновление кода запроса начинается с ---- с использованием (SqlConnection……)
namespace Salesapp.Controllers
{
public class SalesController : Controller
{
// GET: Sales
public ActionResult Index()
{
return View();
}
public ActionResult SalesIndex()
{
SalesLayanEntities3 db = new SalesLayanEntities3();
List<Product> list = db.Products.ToList();
ViewBag.SalesName = new SelectList(list, "prod_id", "prod_name");
List<Employee> listi = db.Employees.ToList();
ViewBag.EmpName = new SelectList(listi, "emp_id", "emp_name");
List<Customer> listiw = db.Customers.ToList();
ViewBag.CustName = new SelectList(listiw, "cust_id", "cust_name");
return View();
}
public ActionResult SaveSales(SalesForm model)
{
try
{
SalesLayanEntities3 db = new SalesLayanEntities3();
Sales_Record sale_prod = new Sales_Record();
sale_prod.unit_price = model.Unit_purchase;
sale_prod.unit_purchase = model.Unit_price;
sale_prod.prod_id = model.Prod_id;
sale_prod.emp_id = model.Emp_id;
sale_prod.Dates = model.Dates;
sale_prod.cust_id = model.Cust_id;
db.Sales_Record.Add(sale_prod);
db.SaveChanges();
int latestProdId = sale_prod.sales_id;
TempData["status"] = "Success";
using (SqlConnection sqlCon = new SqlConnection(@"Data Source=servername;Initial Catalog=SalesLayan;User ID=username;Password=mypassword;"))
{
sqlCon.Open();
SqlCommand cmd12 = sqlCon.CreateCommand();
cmd12.CommandType = CommandType.Text;
cmd12.CommandText = "update product set prod_quantity=prod_quantity-" + quant.Text "where prod_id=" + ProdIds.Text;
cmd12.ExecuteNonQuery();
}
}
catch (Exception ex)
{
throw ex;
}
return RedirectToAction("SalesIndex");
}
}
}