using System;
using System.Collections.Generic;
using System.Data;
using System.Data.Entity;
using System.Linq;
using System.Net;
using System.Web;
using System.Web.Mvc;
using LiqourStore.Entities;
using LiqourStore.Persistence;
using LiqourStore.Persistence.Repositories;
namespace LiquorStore.MVC.Controllers {
public class ProductoController: Controller {
// private LiqourStoreDbContext db = new LiqourStoreDbContext();
private UnityOfWork unityOfwork = UnityOfWork.Instance;
// GET: Productoes
public ActionResult Index() {
// var productos = db.Productos.Include(p => p.Marca);
// return View(productos.ToList());
return View(unityOfwork.Producto.GetAll());
}
// GET: Productoes/Details/5
public ActionResult Details(int ? id) {
if (id == null) {
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
//Producto producto = db.Productos.Find(id);
Producto producto = unityOfwork.Producto.Get(id);
if (producto == null) {
return HttpNotFound();
}
return View(producto);
}
// GET: Productoes/Create
public ActionResult Create() {
// ViewBag.MarcaId = new SelectList(db.Marcas, "MarcaId", "NombreMarca");
return View();
}
// POST: Productoes/Create
// Para protegerse de ataques de publicación excesiva, habilite las propiedades específicas a las que desea enlazarse. Para obtener
// más información vea https://go.microsoft.com/fwlink/?LinkId=317598.
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create([Bind(Include = "ProductoId,NombreCliente,DescripcionProducto,StockProducto,MarcaId")] Producto producto) {
if (ModelState.IsValid) {
// db.Productos.Add(producto);
unityOfwork.Producto.Add(producto);
// db.SaveChanges();
unityOfwork.SaveChanges();
return RedirectToAction("Index");
}
// ViewBag.MarcaId = new SelectList(db.Marcas, "MarcaId", "NombreMarca", producto.MarcaId);
return View(producto);
}
// GET: Productoes/Edit/5
public ActionResult Edit(int ? id) {
if (id == null) {
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
// Producto producto = db.Productos.Find(id);
Producto producto = unityOfwork.Producto.Get(id);
if (producto == null) {
return HttpNotFound();
}
// ViewBag.MarcaId = new SelectList(db.Marcas, "MarcaId", "NombreMarca", producto.MarcaId);
return View(producto);
}
// POST: Productoes/Edit/5
// Para protegerse de ataques de publicación excesiva, habilite las propiedades específicas a las que desea enlazarse. Para obtener
// más información vea https://go.microsoft.com/fwlink/?LinkId=317598.
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Edit([Bind(Include = "ProductoId,NombreCliente,DescripcionProducto,StockProducto,MarcaId")] Producto producto) {
if (ModelState.IsValid) {
// db.Entry(producto).State = EntityState.Modified;
unityOfwork.StateModified(producto);
// db.SaveChanges();
unityOfwork.SaveChanges();
return RedirectToAction("Index");
}
// ViewBag.MarcaId = new SelectList(db.Marcas, "MarcaId", "NombreMarca", producto.MarcaId);
return View(producto);
}
// GET: Productoes/Delete/5
public ActionResult Delete(int ? id) {
if (id == null) {
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
// Producto producto = db.Productos.Find(id);
Producto producto = unityOfwork.Producto.Get(id);
if (producto == null) {
return HttpNotFound();
}
return View(producto);
}
// POST: Productoes/Delete/5
[HttpPost, ActionName("Delete")]
[ValidateAntiForgeryToken]
public ActionResult DeleteConfirmed(int id) {
// Producto producto = db.Productos.Find(id);
Producto producto = unityOfwork.Producto.Get(id);
// db.Productos.Remove(producto);
unityOfwork.Producto.Delete(producto);
// db.SaveChanges();
unityOfwork.SaveChanges();
return RedirectToAction("Index");
}
protected override void Dispose(bool disposing) {
if (disposing) {
// db.Dispose();
unityOfwork.Dispose();
}
base.Dispose(disposing);
}
}
}
Asked
Active
Viewed 307 times
0
sioesi
- 11,365
- 5
- 20
- 55
Luis Medina
- 11
- 4
-
1Hola Luis bienvenido a Stack Over Flow en español, para hacer una pregunta debes explicar mejor tu problema. Logs, lineas de errores, etc. – sioesi May 25 '17 at 15:38
-
Se que es ASP.Net y no Java, pero suena a que [Ésto](https://es.stackoverflow.com/questions/42977/cu%c3%a1l-es-la-soluci%c3%b3n-a-todos-los-errores-nullpointerexception-presentes-pasados) te va a servir – FederHico May 25 '17 at 15:48