Estou com o mesmo problema de outro colega, mas no meu não identifico erros...
public class FilterConfig
{
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new AutorizacaoFilterAttribute());
}
}
public class AutorizacaoFilterAttribute : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
object usuario = filterContext.HttpContext.Session["usuario"];
if (usuario == null)
{
filterContext.Result = new RedirectToRouteResult(
new RouteValueDictionary(
new { controller = "Login", action = "Index" }
)
);
}
}
}
namespace CaelumEstoque.Controllers
{
[AutorizacaoFilter]
public class ProdutoController : Controller
{
public ActionResult Index()
{
if (GlobalVariables.Produtos.Count <= 0)
Produto.Init();
if (GlobalVariables.Categorias.Count <= 0)
CategoriaDoProduto.Init();
IList<Produto> produtos = GlobalVariables.Produtos;
ViewBag.Produtos = produtos;
return View();
}
public ActionResult Visualiza(int id)
{
Produto produto = Produto.BuscaPorId(id);
ViewBag.Produto = produto;
return View(produto);
}
public ActionResult Form()
{
if (GlobalVariables.Produtos.Count <= 0)
Produto.Init();
if (GlobalVariables.Categorias.Count <= 0)
CategoriaDoProduto.Init();
ViewBag.Produto = new Produto();
IList<CategoriaDoProduto> categorias = GlobalVariables.Categorias;
ViewBag.Categorias = categorias;
return View();
}
[ValidateAntiForgeryToken]
[HttpPostAttribute]
public ActionResult Adiciona(Produto produto)
{
int idDaInformatica = 0;
if (produto.CategoriaId.Equals(idDaInformatica) && produto.Preco < 100)
{
ModelState.AddModelError("produto.InformaticaComPrecoInvalido", "Produtos da categoria informática devem ter preço maior do que 100");
}
if (ModelState.IsValid)
{
Produto.Create(produto);
return RedirectToAction("Index");
}else
{
ViewBag.Produto = produto;
IList<CategoriaDoProduto> categorias = GlobalVariables.Categorias;
ViewBag.Categorias = categorias;
return View("Form");
}
}
public ActionResult DecrementaQtd(int id)
{
Produto produto = Produto.BuscaPorId(id);
produto.Quantidade--;
return Json(produto);
}
}
}
Alguém poderia me ajudar?