简体   繁体   English

无法将类型为“ System.Web.UI.WebControls.ListItem”的对象转换为类型为“ System.IConvertible”的对象

[英]Unable to cast object of type 'System.Web.UI.WebControls.ListItem' to type 'System.IConvertible'

I am facing this but unable to solve it.This are from List. 我正面临着这个问题,但无法解决它。 Having the problem at AddOnTriggerItems = gvTriggerProduct.Rows.Cast<GridViewRow>().Select(rowItem => new AddOnTriggerItem() AddOnTriggerItems = gvTriggerProduct.Rows.Cast<GridViewRow>().Select(rowItem => new AddOnTriggerItem()

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()
};

Thx to grek and derloopkat. 谢谢希腊和derloopkat。 Grek's hint: the problem can be anywhere within the statement that starts in the error line Grek的提示:问题可能出现在以错误行开头的语句内的任何地方

There are 3 parts that I changed. 我更改了3个部分。

  1. I cannot have 2 gvTriggerProduct. 我不能有2个gvTriggerProduct。

  2. One part in my existing code(not here). 我现有代码的一部分(不在此处)。 Missing ".Value". 缺少“ .Value”。 Grek's hint Convert.ToByte(((DropDownList)rowItem.FindControl("ddlMinTriggerQuantity")).SelectedItem Grek的提示Convert.ToByte((((DropDownList)rowItem.FindControl(“ ddlMinTriggerQuantity”)))。SelectedItem

  3. Error: Cannot implicitly convert type 'void' to 'System.Collections.Generic.List' 错误:无法将类型“ void”隐式转换为“ System.Collections.Generic.List”

      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() }; 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 无法将“System.String”类型的对象转换为“System.Web.UI.WebControls.ListItem”类型 - Unable to cast object of type 'System.String' to type 'System.Web.UI.WebControls.ListItem 无法将类型为“ System.Web.UI.WebControls.ListItem”的对象转换为类型为“ System.String”的对象 - Unable to cast object of type 'System.Web.UI.WebControls.ListItem' to type 'System.String' 如何将类型为“ System.Web.UI.WebControls.Label”的对象转换为类型为“ System.IConvertible”的对象 - How to cast object of type 'System.Web.UI.WebControls.Label' to type 'System.IConvertible' 从对象类型System.Web.UI.WebControls.ListItem到已知托管提供程序本机类型的映射不存在 - No mapping exists from object type System.Web.UI.WebControls.ListItem to a known managed provider native type 对象类型System.Web.UI.WebControls.ListItem没有映射 - No mapping exists from object type System.Web.UI.WebControls.ListItem 无法将类型为“数据”的对象转换为类型为“ System.IConvertible”的对象 - Unable to cast object of type 'Data' to type 'System.IConvertible' 无法将类型为“骰子”的对象转换为类型为“ System.IConvertible”的对象 - Unable to cast object of type 'Dice' to type 'System.IConvertible' 无法将类型为DataTable的对象转换为类型System.IConvertible - Unable to cast object of type DataTable to type System.IConvertible 无法将“MyType”类型的对象强制转换为“IMyInterface`1 [System.IConvertible]” - Unable to cast object of type 'MyType' to type 'IMyInterface`1[System.IConvertible]' 错误无法将“System.Web.Mvc.SelectList”类型的对象转换为“System.IConvertible” - error Unable to cast object of type 'System.Web.Mvc.SelectList' to type 'System.IConvertible'
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM