Asp.net mvc ORDERBYX27;不存在?
我不确定这是我的代码中的一个错误,或者可能是其他东西弄乱了它,但是我有一个函数,我在Asp.net mvc ORDERBYX27;不存在?,asp.net-mvc,linq,razor,sql-order-by,actionresult,Asp.net Mvc,Linq,Razor,Sql Order By,Actionresult,我不确定这是我的代码中的一个错误,或者可能是其他东西弄乱了它,但是我有一个函数,我在ActionResult中从MVC模型创建一个简单列表,我有其他人使用OrderByDescending并工作,但这是出于某种原因引发的错误 [Authorize(Roles = "Administrator, Manager, User")] [SessionExpire] public ActionResult PrepareShipment(int id,string sortOrder) { //
ActionResult
中从MVC模型创建一个简单列表,我有其他人使用OrderByDescending
并工作,但这是出于某种原因引发的错误
[Authorize(Roles = "Administrator, Manager, User")]
[SessionExpire]
public ActionResult PrepareShipment(int id,string sortOrder)
{
//ViewBag.NameSortParm = String.IsNullOrEmpty(sortOrder) ? "name_desc" : "";
//ViewBag.DateSortParm = sortOrder == "Date" ? "date_desc" : "Date";
Order orderResult = (from o in db.Orders.Include("OrderItems").Include("OrderItems.Item")
where o.OrderID == id
select o).First();
orderResult = orderResult.OrderByDescending(o => o.Item.ItemName);
return View(orderResult);
}
这是我完整的
ActionResult
数据库有一个表顺序,另一个对象名为Item,该对象有一个列名为ItemName
。我已经有一个视图,其中有一个列表是在视图中专门完成的,但是现在我必须按项目名称对数据进行排序。因此,每次在页面上执行操作时,列表的顺序与第一次加载时相同。现在,每次我重新加载页面时,列表都会重新排序。好的,所以我在foreach中解决了这个问题,现在我意识到我应该在原始帖子中包含这个问题
每个人的初衷是这样的
@foreach (OrderItem item in Model.OrderItems) {
我通过对foreach这样做来修复它
@foreach (OrderItem item in Model.OrderItems.OrderBy(m => m.OrderItemID)) {
我甚至不知道你可以在c#中的foreach中添加这样的附加信息
谢谢大家对我的耐心:D关于我现在删除的答案的评论中的注释:OP希望对项目进行排序,而不是订单本身。视图中正在迭代此项序列,我们没有用于此项的代码。。。我建议OP在视图中使用
OrderByDescending
(按项目顺序),但OP还不能使用此建议,我们不能提供示例代码,因为我们不知道查看代码是什么样子的…很抱歉没有提供您所需的所有信息。我对提问不熟悉,通常可以找到我想要的任何答案。