【发布时间】:2015-08-10 23:35:10
【问题描述】:
public void GetMuscles(List<ListItem> selected)
{
int[] arrayOfStrings = new int[selected.Count];
for (int i = 0; i < selected.Count; i++)
{
arrayOfStrings[i] = Convert.ToInt32(selected[i].Value);
}
}
using (var db = new DWSEntities())
{
var muscles = (from m in db.Muscles
where m.MainMusleGroupID. //ISSUE
select new { m.MusleName, m.ID }).Take(40);
}
在 where 语句中我需要使用 contains 但在 "." 之后我没有使用包含的选项。我用非整数值尝试了同样的方法,它出现了。我有一个整数数组,需要 WHERE IN 子句。那么有没有其他方法可以在没有包含的情况下执行此操作,或者如何将包含与整数值一起使用?
【问题讨论】:
-
In是倒置的,即where MyIntArray.Contains(m.MainMusleGroupID)(在 lambda 中是db.Muscles.Where(m => MyIntArray.Contains(m.MainMusleGroupID).Select ...) -
我也试过了,但我得到另一个错误,比如“int []不包含'包含'的定义和最佳扩展重载......”
-
检查您的 .cs 代码文件顶部是否有
using System.Linq;。
标签: .net arrays entity-framework select contains