When passing a model from view to controller-action, all the properties returned are 0s. Please see image attached. Returned model
Action defined in OrderController.cs
[HttpPost]
public ActionResult Update(Order_Detail m)
{
return View();
//OrderUpdateViewModel model = new OrderUpdateViewModel();
//model.hasError = true;
//model.Title = m.OrderDetail.Title + " Edit Status";
}
View file Edit.cshtml:
@model ADO_Fan.Models.OrderDetailViewModel
@using (Html.BeginForm("Update", "Order", FormMethod.Post))
{
<div>
@Html.LabelFor(m => m.OrderDetail.OrderID) @Html.DisplayFor(m => m.OrderDetail.OrderID)<br />
@Html.LabelFor(m => m.OrderDetail.Product.ProductName) @Html.DisplayFor(m => m.OrderDetail.Product.ProductName)<br />
@Html.LabelFor(m => m.OrderDetail.UnitPrice) @Html.DisplayFor(m => m.OrderDetail.UnitPrice)<br />
@Html.LabelFor(m => m.OrderDetail.Quantity) @Html.TextBoxFor(m => m.OrderDetail.Quantity)<br />
@Html.LabelFor(m => m.OrderDetail.Discount) @Html.DisplayFor(m => m.OrderDetail.Discount)<br />
<input type="submit" value="Update" />
</div>
}
View Model in OrderDetailViewModel.cs
using NorthwindDAL;
namespace ADO_Fan.Models
{
public class OrderDetailViewModel
{
public Order_Detail OrderDetail { get; set; }
}
}
Order_Detail defined in reference class
namespace NorthwindDAL
{
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity.Spatial;
[Table("Order Details")]
public partial class Order_Detail
{
[Key]
[Column(Order = 0)]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int OrderID { get; set; }
[Key]
[Column(Order = 1)]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
public int ProductID { get; set; }
[Column(TypeName = "money")]
public decimal UnitPrice { get; set; }
public short Quantity { get; set; }
public float Discount { get; set; }
public virtual Order Order { get; set; }
public virtual Product Product { get; set; }
}
}
Any advice/suggestion is appreciated!