即时通讯使用可排序的jquery插件,因为我希望用户可以选择在我的视图中显示图像的顺序。
为此我有一个Get Controller,它将数据发送到我的PartialView。
如何让现在的Post Controller更新我的数据库中的表?
注意:此时控制器不会收到任何数据。我还没弄明白什么是错的
有人可以帮我这个吗?
提前致谢:
这是我的代码:
在我的PartialView中:
@(Html.BeginForm("UpdateOrder", "Admin", FormMethod.Post)){
<div id="Order">
<ul id="sortable">
@foreach (var p in ViewBag.Images)
{
<li id="@Html.AttributeEncode(p.FileName)">
<img src="~/Files/@p.FileName"/>
</li>
}
</ul>
</div>
}
控制器:
if (ModelState.IsValid)
{
using (SqlConnection cn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString))
{
SqlCommand cmd;
System.Text.StringBuilder sql = new System.Text.StringBuilder();
sql.Append("Update Image Set MyFileName=??? Order By ASC");
cn.Open();
cmd = new SqlCommand(sql.ToString(), cn);
cmd.Parameters.Add(??????????).Value = ;
cmd.ExecuteNonQuery();
cn.Close();
}
}
return View();
答案 0 :(得分:0)
你在找这样的东西吗?
SqlCommand comm = new SqlCommand("UPDATE Customers SET Name=@name WHERE ID=@id", con;
comm.Parameters.AddWithValue("@name", "John");
comm.Parameters.AddWithValue("@id", id);
要将数据从视图传递到控制器,请查看以下链接:
ASP.NET MVC 3 Razor: Passing Data from View to Controller
ASP.Net MVC Passing multiple parameters to a view
我为网站创建了一个后端,例如可以添加,编辑,删除事件。因此,事件视图中的片段如下所示:
<div id="tabs-2" class="ui-widget-content">
<h2>
Events</h2>
<p>
@Html.ActionLink("Create new Event", "EventCreate")
</p>
<table id="tableEvent">
<tr>
<th>
Event
</th>
<th>
Date
</th>
<th>
Day of the Week
</th>
<th>
</th>
</tr>
@foreach (var e in ViewBag.Events)
{
<tr id="@e.EventID">
<td>
<h4>@e.EventName</h4>
</td>
<td>
<h4>@string.Format("{0:d}", e.Datum)</h4>
</td>
<td>
<h4>@e.Tag</h4>
</td>
<td>
@Html.ActionLink("Löschen", "EventDelete", new { id = e.EventID })
</td>
</tr>
}
</table>
</div>
我将id传递给ActionLink中的控制器并调用EventDelete:
[Authorize]
public ActionResult EventDelete(int id)
{
repevent.Delete(id);
return RedirectToAction("Main");
}
现在我有了活动的ID,可以随心所欲。 (在我的情况下,我删除了具有相关ID的事件。
public void Delete(int id)
{
using (KiGaDBEntities db = new KiGaDBEntities())
{
Event event = db.Event.SingleOrDefault(e => e.EventID == id);
if (event != null)
{
db.Event.Remove(event);
db.SaveChanges();
}
}
}
我希望能帮到你!