我正在使用 linq 查询根据它的 id 创建我的集合,它是一个 guid。我有一个可以与 1 个或多个产品关联的项目。我需要显示与该项目和其他数据关联的所有产品名称就像名称,摘要,日期一样。我的问题是当我尝试使用变量 i 时,它是我的数组中的一个 guid,它会抛出 Guid 无法转换为 int 的错误。我很确定我必须转换我的Guid 数组到 int 数组,但不知道如何实现它。下面是我的代码。
foreach( Guid i in itemid)
{
var vals = from r in datacontext.ItemTable_s where r.itemID == i select r;
ItemTable_s[] tempdata = vals.ToArray<.ItemTable_s>();
Facet[] ftemp= new Facet[tempdata.Length];
ItemImage image = null;
string s1="";
for (int iv = 0; iv < tempdata.Length; iv++)
{
s1 += tempdata[i].productname + "\n";
}
ftemp[3] = new facet("Productname",facettype.text,s1);
collection.AddItem( tempdata[i].ItemName, null, null,
new ItemImage(new Uri(-tempdata[i].location))
);
}
在我上面的代码 tempdata[i] 是我得到错误消息的地方,说 guid 不能隐式转换为 int。我该如何解决这个问题还有其他更好的方法吗?