C# 无法强制转换类型为';System.Web.UI.WebControls.ListItem';输入';System.IConvertible';
我面临这个问题,但无法解决。这是列表中的。有问题C# 无法强制转换类型为';System.Web.UI.WebControls.ListItem';输入';System.IConvertible';,c#,C#,我面临这个问题,但无法解决。这是列表中的。有问题 addOnTiggerItems=gvTriggerProduct.Rows.Cast().Select(rowItem=>newaddOnTiggerItem() ProjectA.TEST.BE.AddOn AddOn=newprojecta.TEST.BE.AddOn() { AddCode=AddCode, CreatedTime=DateTime。现在, ModifiedTime=DateTime。现在, AddOnTigger
addOnTiggerItems=gvTriggerProduct.Rows.Cast().Select(rowItem=>newaddOnTiggerItem()
ProjectA.TEST.BE.AddOn AddOn=newprojecta.TEST.BE.AddOn()
{
AddCode=AddCode,
CreatedTime=DateTime。现在,
ModifiedTime=DateTime。现在,
AddOnTiggers=gvTriggerProduct.Rows.Cast().Select(row=>newAddOnTigger()
{
AddOnTriggerItems=gvTriggerProduct.Rows.Cast().Select(rowItem=>new AddOnTriggerItem())
{
ProductTypeID=gvTriggerProduct.Rows[rowItem.RowIndex].Cells[1].Text.ToString(),
ProductCode=gvTriggerProduct.Rows[rowItem.RowIndex]。单元格[2]。Text.ToString(),
CreatedTime=DateTime。现在,
ModifiedTime=DateTime.Now
}).ToList(),
ActiveStatus=1,
CreatedTime=DateTime。现在,
ModifiedTime=DateTime.Now
}).ToList(),
AddOnProducts=gvAddOnProduct.Rows.Cast().Select(rowAddOnProducts=>new AddOnProduct())
{
ProductTypeID=gvAddOnProduct.Rows[rowItem.RowIndex].Cells[2].Text.ToString(),
ProductCode=gvAddOnProduct.Rows[rowItem.RowIndex].Cells[2].Text.ToString(),
CreatedTime=DateTime。现在,
ModifiedTime=DateTime。现在,
AddOnProductAllocations=AddOnProductAllocationSession.Where(p=>(p.ProductID==(Convert.ToString(((HiddenField)rowAddOnProducts.FindControl(“ProductID”)).Value))).ToList(),
})托利斯先生()
};
谢谢grek和derloopkat。
Grek的提示:问题可能出现在从错误行开始的语句中的任何地方
我改了三个部分
List triggerlist=new List();
triggerList.Add(新的AddOnTrigger
{
AddOnTriggerItems=gvTriggerProduct.Rows.Cast().Select(rowItem=>new AddOnTriggerItem())
{
ProductTypeID=gvTriggerProduct.Rows[rowItem.RowIndex].Cells[1].Text.ToString(),
ProductCode=gvTriggerProduct.Rows[rowItem.RowIndex]。单元格[2]。Text.ToString(),
CreatedTime=DateTime。现在,
ModifiedTime=DateTime.Now
}).ToList(),
ActiveStatus=1,
CreatedTime=DateTime。现在,
ModifiedTime=DateTime.Now}
});
ProjectA.TEST.BE.AddOn AddOn=新ProjectA.TEST.BE.AddOn()
{
AddCode=AddCode,
CreatedTime=DateTime。现在,
ModifiedTime=DateTime。现在,
AddOnTriggers=触发器列表
AddOnProducts=gvAddOnProduct.Rows.Cast().Select(rowAddOnProducts=>new AddOnProduct())
{
ProductTypeID=gvAddOnProduct.Rows[rowItem.RowIndex].Cells[2].Text.ToString(),
ProductCode=gvAddOnProduct.Rows[rowItem.RowIndex].Cells[2].Text.ToString(),
CreatedTime=DateTime。现在,
ModifiedTime=DateTime。现在,
AddOnProductAllocations=AddOnProductAllocationSession.Where(p=>(p.ProductID==(Convert.ToString(((HiddenField)rowAddOnProducts.FindControl(“ProductID”)).Value))).ToList(),
})托利斯先生()
};
Thx给grek和derloopkat。 Grek的提示:问题可能出现在从错误行开始的语句中的任何地方 我改了三个部分
List triggerlist=new List();
triggerList.Add(新的AddOnTrigger
{
AddOnTriggerItems=gvTriggerProduct.Rows.Cast().Select(rowItem=>new AddOnTriggerItem())
{
ProductTypeID=gvTriggerProduct.Rows[rowItem.RowIndex].Cells[1].Text.ToString(),
ProductCode=gvTriggerProduct.Rows[rowItem.RowIndex]。单元格[2]。Text.ToString(),
CreatedTime=DateTime。现在,
ModifiedTime=DateTime.Now
}).ToList(),
ActiveStatus=1,
CreatedTime=DateTime。现在,
ModifiedTime=DateTime.Now}
});
ProjectA.TEST.BE.AddOn AddOn=新ProjectA.TEST.BE.AddOn()
{
AddCode=AddCode,
CreatedTime=DateTime。现在,
ModifiedTime=DateTime。现在,
AddOnTriggers=触发器列表
AddOnProducts=gvAddOnProduct.Rows.Cast().Select(rowAddOnProducts=>new AddOnProduct())
{
ProductTypeID=gvAddOnProduct.Rows[rowItem.RowIndex].Cells[2].Text.ToString(),
ProductCode=gvAddOnProduct.Rows[rowItem.RowIndex].Cells[2].Text.ToString(),
CreatedTime=DateTime。现在,
ModifiedTime=DateTime。现在,
AddOnProductAllocations=AddOnProductAllocationSession.Where(p=>(p.ProductID==(Convert.ToString(((HiddenField)rowAddOnProducts.FindControl(“ProductID”)).Value))).ToList(),
})托利斯先生()
};
在类AddOnProduct中,ProductTypeID是整数还是字符串?此处发布了一个类似的错误。抛出的错误不在ProdutTypeID处。它在AddOnTriggerItems=gvTriggerProduct.Rows.Cast()处。选择(rowItem=>new AddOnTriggerItem()AddOnTrigger是父级,而AdOnTrutGrand项是子级。它是1到多个关系。我不确定是否在这段时间内正确写入。然后检查类AdOnTrutGrand项中的OpjtType ID。我将它设为这样。将1作为StudioType ID的字符串。我需要屏蔽该信息。它最初是一个字节,值为COVE。rt转换为字节。实际上它是Convert.ToByte(((HiddenField)rowItem.FindControl(“hfNewProductID”).Value)。Split(“”“)[0]),假设gvTriggerProduct是GridView,为什么将其行强制转换为GridViewRow?它们应该已经是行。在类AddOnProduct中,ProductTypeID是整数还是字符串?此处发布了类似的错误。引发的错误不在ProdutTypeID处。它位于AddOnTriggerItems=gvTriggerProduct.rows.cast()。选择(rowItem=>
ProjectA.TEST.BE.AddOn addOn = new ProjectA.TEST.BE.AddOn()
{
AddCode = addCode,
CreatedTime = DateTime.Now,
ModifiedTime = DateTime.Now,
AddOnTriggers = gvTriggerProduct.Rows.Cast<GridViewRow>().Select(row => new AddOnTrigger()
{
AddOnTriggerItems = gvTriggerProduct.Rows.Cast<GridViewRow>().Select(rowItem => new AddOnTriggerItem()
{
ProductTypeID = gvTriggerProduct.Rows[rowItem.RowIndex].Cells[1].Text.ToString(),
ProductCode = gvTriggerProduct.Rows[rowItem.RowIndex].Cells[2].Text.ToString(),
CreatedTime = DateTime.Now,
ModifiedTime = DateTime.Now
}).ToList(),
ActiveStatus = 1,
CreatedTime = DateTime.Now,
ModifiedTime = DateTime.Now
}).ToList(),
AddOnProducts = gvAddOnProduct.Rows.Cast<GridViewRow>().Select(rowAddOnProducts => new AddOnProduct()
{
ProductTypeID = gvAddOnProduct.Rows[rowItem.RowIndex].Cells[2].Text.ToString(),
ProductCode = gvAddOnProduct.Rows[rowItem.RowIndex].Cells[2].Text.ToString(),
CreatedTime = DateTime.Now,
ModifiedTime = DateTime.Now,
AddOnProductAllotments = addOnProductAllotmentSession.Where(p => (p.ProductID == (Convert.ToString(((HiddenField)rowAddOnProducts.FindControl("ProductID")).Value)))).ToList(),
}).ToList()
};
List<AddOnTrigger> triggerlist = new List<AddOnTrigger>();
triggerList.Add(new AddOnTrigger
{
AddOnTriggerItems = gvTriggerProduct.Rows.Cast<GridViewRow>().Select(rowItem => new AddOnTriggerItem()
{
ProductTypeID = gvTriggerProduct.Rows[rowItem.RowIndex].Cells[1].Text.ToString(),
ProductCode = gvTriggerProduct.Rows[rowItem.RowIndex].Cells[2].Text.ToString(),
CreatedTime = DateTime.Now,
ModifiedTime = DateTime.Now
}).ToList(),
ActiveStatus = 1,
CreatedTime = DateTime.Now,
ModifiedTime = DateTime.Now}
});
ProjectA.TEST.BE.AddOn addOn = new ProjectA.TEST.BE.AddOn()
{
AddCode = addCode,
CreatedTime = DateTime.Now,
ModifiedTime = DateTime.Now,
AddOnTriggers = triggerlist
AddOnProducts = gvAddOnProduct.Rows.Cast<GridViewRow>().Select(rowAddOnProducts => new AddOnProduct()
{
ProductTypeID = gvAddOnProduct.Rows[rowItem.RowIndex].Cells[2].Text.ToString(),
ProductCode = gvAddOnProduct.Rows[rowItem.RowIndex].Cells[2].Text.ToString(),
CreatedTime = DateTime.Now,
ModifiedTime = DateTime.Now,
AddOnProductAllotments = addOnProductAllotmentSession.Where(p => (p.ProductID == (Convert.ToString(((HiddenField)rowAddOnProducts.FindControl("ProductID")).Value )))).ToList(),
}).ToList()
};