【发布时间】:2013-06-27 21:19:38
【问题描述】:
浏览了相关帖子,但仍有困难。这是我的代码:
var id = Request.QueryString["id"].AsInt();
var accountNum = Request.QueryString["accountnum"];
var orderIDs = new List<OrderID>();
// Order IDs are in the form: OrderNum-OrderLine[,...]
// e.g. orderids=41417-6,36703-1
foreach (var orderID in Request.QueryString["orderids"].Split(',')) {
var components = orderID.Split('-');
orderIDs.Add(new OrderID() {
OrderNum = components[0].AsInt(),
OrderLine = components[1].AsInt()
});
}
var dbContext = new TelecomEntities();
var assignedLines = dbContext.LineAssignments
.Where(a => orderIDs
.Any(i => a.OrderNum == i.OrderNum && a.OrderLine == i.OrderLine))
.ToList();
运行此程序时,我收到错误:无法创建类型为“OrderID”的常量值。此上下文仅支持原始类型或枚举类型。
根据我在其他帖子中阅读的内容,我无法执行查询,因为orderIDs 不在dbContent 上下文中。
编辑: OrderID 类
public class OrderID
{
public int OrderNum { get; set; }
public int OrderLine { get; set; }
public OrderID() { }
}
【问题讨论】:
-
OrderID 类的声明在哪里?
-
它在
OrderID.cs的App_Code文件夹中 -
抱歉,我的意思是,您能否向我们展示您的 OrderID 类声明。 :-)
标签: c# asp.net linq-to-entities dbcontext