すべての商品を返品する際には、1つのフォームがあります。そして私はTextBoxを持っています。このテキストボックスに1つのフォームから複数のレコードを保存します。
View form:
|ID|Product|TextBox (amount of product)
|3 |Carrot | 20
|4 |Potatos| 5
|7 |Tomato | 10
私は、製品の量を書いて、データベースその他(製品)databseで
Add(zuzycie) table:
|ID|ID_Product|amount|date
|1 | 3 | 20 |3.12.2011
|2 | 4 | 5 |3.12.2011
|3 | 7 | 10 |3.12.2011
および製品の合計量にこれを保存します。
Product table
|ID|name |amount
|3 |Carrot |10 + 20
|4 |Potatos|15 + 5
|7 |Tomato |7 + 10
データベースには、金額は別個のレコードとして保存されます。私はあなたが私の意味を理解してくれることを願っています。
コントローラの全製品のIDを取得してデータベースに保存する方法は?
ビュー:
@using (Html.BeginForm()) {
@Html.ValidationSummary(true)
<fieldset>
<legend>Zużycie produków</legend>
<br />
@{
var grid = new WebGrid(ViewBag.produkty,null, "Produkty", 5);
}
@grid.GetHtml(
tableStyle: "grid",
headerStyle: "head",
alternatingRowStyle: "alt",
columns: grid.Columns(
grid.Column("nazwa_prod","Produkt"),
grid.Column("ilosc","Ilość"),
grid.Column("jednostka","Jed."),
grid.Column("cena","Cena"),
grid.Column("nazwa","Firma"),
grid.Column("ID_Produkt", "ID_Prod"),
grid.Column(header: "Zuzycie", format: (item) =>
new HtmlString(
Html.TextBoxFor(model => model.ilosc).ToString())) /*amount text box */
)
)
モデル:
public class zuzycieModel
{
public int ID_Produktu { get; set; } //Id_product
public decimal ilosc {get;set;} //amount
public string data { get; set; } //date
}
コントローラー:
public ActionResult zuzycie()
{
var prod = (from d in baza.Produkts
join s in baza.Firmas on d.ID_firma equals s.ID_firma
select new { d.ID_firma, d.nazwa_prod, d.ilosc, d.jednostka, d.cena, d.ID_Produkt, s.nazwa }).ToList();
ViewBag.produkty = prod;
return View();
}
[HttpPost]
public ActionResult zuzycie(zuzycieModel model)
{
Zuzycie zuz = new Zuzycie(); //table zuzycie
var dat = DateTime.Today;
zuz.ID_Produkt = model.ID_Produktu; //Id product
zuz.ilosc = model.ilosc; //amount
zuz.data = dat; //date
baza.Zuzycies.InsertOnSubmit(zuz);
baza.SubmitChanges();
return RedirectToAction("zarzadzaj_produktami", "Produkt");
}
は、私は、製品のIDを取得してみてください、私はHiddenForとしてビューでそれをパットとモデルを使用して取得します。 ..それは動作しません...
ご理解いただけます。だから私がこれをしたいなら、私は何をする必要があります。私は何の言葉...制御を意味する...何が私にどのように始まり、何を読んでいるかを案内します。 私はViewBagを使用してテーブルを表示します。なぜこれは..私は今ではない...私はビューのテーブルにショーのレコードが欲しかったし、それは働いたので、私はまだこれを使用しています。私は 'return view(prod)を使用しています。私が日付をつけたとき。 TextBoxに保存します。 – user1031034
この質問を見て:http://stackoverflow.com/questions/4720330/model-containing-list-of-models-mvc-3-razorプラスあなたが本当にこのチュートリアルを完全に失ったと感じたら、それは完全な方法です主なMVCの概念を理解するhttp://mvcmusicstore.codeplex.com/ – torm