参数类型'对象'不能分配给参数类型' string'

时间:2015-10-22 15:27:08

标签: c# asp.net

我的aspx页面中有以下标记

<input type="checkbox" id="chkFlags" name="chkFlags" value="<%#DataBinder.Eval(DataItemContainer, "DataItem.Tag_ID") %>" <%#SelectTags(DataBinder.Eval(Container, "DataItem.Tag_ID")) %>/>

我收到以下错误:

  

参数类型&#39;对象&#39;不能分配给参数类型&#39;字符串&#39;

突出显示的行部分是:

<%#SelectTags(DataBinder.Eval(Container, "DataItem.Tag_ID"))

我的SelectTags例程如下:

        public string SelectTags(string Tag_ID)
    {

        string[] aTags = mobjFormat.StripObjectToString(Request.Form["chkFlags"]).Split(Convert.ToChar(","));  //added square brackets to Request.Form and syntax to convert from string to char 10/21/15 Max //
        string sItem = "";
        string sReturn = "";

        mobjSecurity.MessageStack_Insert("Procedure", "SelectTags", "");

        foreach (string sItem_loopVariable in aTags)
        {
            sItem = sItem_loopVariable;
            if (sItem.Trim() == Tag_ID.ToString().Trim())  //added parenthesis to Trim and ToString 10/21/15 Max //
            {
                sReturn = " checked='checked' ";
            }
        }

        mobjSecurity.MessageStack_Insert("sReturn", sReturn, "SelectTags");
        return sReturn;

    }

我不确定要解决这个错误需要做些什么,也许我只是遗漏了一些东西(我花了很多时间查看这段代码)

有人能指出我的方向来修复这个TIA

1 个答案:

答案 0 :(得分:0)

正如Juharr指出的那样,我刚刚错过了线上的ToString转换。所以我修改如下:

<%#SelectTags(DataBinder.Eval(Container, "DataItem.Tag_ID").ToString())