我试图在Webmatrix中向我的数据库插入一些数据,我是通过教程完成的,然后我尝试将第二个文件重做到同一个数据库中的第二个表,我只是因为我的生活似乎无法想象为什么它不起作用!我将发布不同cshtml文件中的代码!
此外,这些表几乎相同,都有一个主键ID,然后3列都是nvarchar和所有内容的相同设置,只有区别是名称。
第一个文件(有效的文件)
@{
var getData = Database.Open("SmallBakery");
var Name = Request.Form["Name"];
var Description = Request.Form["Description"];
var Price = Request.Form["Price"];
if(IsPost && Validation.IsValid()){
if (ModelState.IsValid) {
var setData = "INSERT INTO Product (Name, Description, Price) " +
"VALUES (@0, @1, @2)";
getData.Execute(setData, Name, Description, Price);
Response.Redirect("~/ListProducts");
}
}
}
身体
<form method="post" action="">
<fieldset>
<legend>Add Product</legend>
<div>
<input placeholder="Name..." name="Name" type="text" size="50" value="@Name" />
</div>
<div>
<input placeholder="Description..." name="Description" type="text" size="50"
value="@Description" />
</div>
<div>
<input placeholder="Price..." name="Price" type="text" size="50" value="@Price" />
</div>
<div>
<label> </label>
<input type="submit" value="Insert" class="submit" />
</div>
</fieldset>
</form>
所以上面的那个是有效的! 以下不起作用,我已经花了好几个小时来弄清楚为什么地球上没有,并且真的想要一些帮助!
并且错误即时接收是针对此行的:
getData.Execute(insertData, kg, set, rep);
{@
var getData = Database.Open("SmallBakery");
var Kg = Request.Form["Kg"];
var Set = Request.Form["Set"];
var Rep = Request.Form["Rep"];
if (IsPost && Validation.IsValid()) {
if (ModelState.IsValid) {
var insertData = "INSERT INTO Test (kg, set, rep) " +
"VALUES (@0, @1, @2)";
getData.Execute(insertData, kg, set, rep);
}
}
}
身体
<form method="post" action="">
<fieldset>
<legend>Add Product</legend>
<div>
<input placeholder="KG..." name="Kg" type="text" size="50" value="@Kg" />
</div>
<div>
<input placeholder="Number of sets..." name="Set" type="text" size="50" value="@Set" />
</div>
<div>
<input placeholder="Number of reps..." name="Rep" type="text" size="50" value="@Rep" />
</div>
<div>
<label> </label>
<input type="submit" value="Insert" class="submit" />
</div>
</fieldset>
</form>