2014-02-11 52 views
0

在我的數據連接 所以基本上我已經表查詢「的productTable」查詢中包含4行ID,名稱,數量及價格 所有我想要的是填補了這一表數據asp.net MVC 4如何將數據添加到表查詢

在Table.aspx

我有這樣的:

<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<Father.Models.ProductTable>" %> 

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server"> 
    Table 
</asp:Content> 

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server"> 

<h1>Table</h1> 
    <% using (Html.BeginForm()) { %> 
     <%: Html.AntiForgeryToken() %> 
     <%: Html.ValidationSummary() %> 
    <fieldset> 
     <ol> 
      <li> 
       <%: Html.LabelFor(z => z.ID) %> 
       <%: Html.TextBoxFor(z => z.ID) %> 
      </li> 
      <li> 
       <%: Html.LabelFor(z => z.Name) %> 
       <%: Html.TextBoxFor(z => z.Name) %> 
      </li> 
      <li> 
       <%: Html.LabelFor(z => z.Quantity) %> 
       <%: Html.TextBoxFor(z => z.Quantity) %> 
      </li> 
      <li> 
       <%: Html.LabelFor(z => z.Price) %> 
       <%: Html.TextBoxFor(z => z.Price) %> 
      </li> 


     </ol> 

     <input type="submit" value="Enter" /> 
    </fieldset> 
    <% } %> 

</asp:Content> 

<asp:Content ID="Content3" ContentPlaceHolderID="FeaturedContent" runat="server"> 



</asp:Content> 

<asp:Content ID="Content4" ContentPlaceHolderID="ScriptsSection" runat="server"> 
</asp:Content> 

在我的TableModel:

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.ComponentModel.DataAnnotations; 
using System.ComponentModel.DataAnnotations.Schema; 
using System.Data.Entity; 
using System.Globalization; 
using System.Web.Security; 

namespace Father.Models 
{ 



     public class ProductTable 
     { 
      [Key] 
      [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)] 

      public int ID { get; set; } 
      [Required] 
      public string Name { get; set; } 
      [Required] 
      public int Quantity { get; set; } 
      [Required] 
      public int Price { get; set; } 
     } 



} 
在我TableController

public class TableController : Controller 
    { 


     public ActionResult Table() 
     { 
      return View(); 
     } 
     [HttpPost] 
     [AllowAnonymous] 
     [ValidateAntiForgeryToken] 
     public ActionResult Table(ProductTable zxc) 
     { 
      if (ModelState.IsValid) 
      { 
       try 
       { 


       } 
       catch 
       { 

       } 
      } 
      return View(zxc); 

     } 

    } 

什麼控制器裏面寫的,所以我終於可以把我的數據插入表

回答

0

我認爲你需要多花點時間閱讀有關MVC模式與Web窗體。看看剃刀也是一樣。你似乎混淆了一切應該如何發生。

您不需要控制器中的兩種方法。

public ActionResult Table() { 
    var zxc = new ProductTable(); 
    // Load the data into the object. 
    return View(zxc); 
} 

,在你的控制器的方法上面會通過的productTable到你有問題的頂部爲型號那麼這將讓你的數據填充到你有標籤和文本框查看建立。

您的HttpPost方法在那裏用於保存從表單中更改的數據。然後,您將驗證所有內容都已正確更新,並將其發回給其他表單(如果保存成功),或返回到模型後面的視圖,其中包含對用戶的任何驗證錯誤或其他提示。

相關問題