我不得不在查询中更改一个参数的数据类型,现在我收到此消息标题中列出的错误消息。我一直试图弄清楚问题是什么,我唯一能想到的是,因为查询的一个参数是一个数字而另一个是字符串,这就引起了问题。不幸的是,我对实体框架很新,不知道如何调整我的查询来解决这个问题
以下是我正在使用的查询:
var Item = (DataContextFactory.GetDataContext().Items.Include("Category")
.Where("it.CategoryID == " + categoryId + " && it.itemID == " +
itemId)).SingleOrDefault();
答案 0 :(得分:2)
查看您的实体框架代码文件,您将看到名为“SomethingContext”的类,然后尝试此代码:
YourDBContext ctx = new YourDBContext();
var item = (from c in ctx.Category
where c.CategoryID == categoryId && c.itemID == itemId
select c).SingleOrDefault();
答案 1 :(得分:2)
如果其中一个是字符串,则您忘记了''
试试这个:(我不知道哪一个是字符串。在这个例子中,categoryId是字符串)
.Where(string.Format("it.CategoryID = '{0}' and it.itemID = {1}", categoryId, itemId))