Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Split()函数不是';t给出输出_C#_Asp.net - Fatal编程技术网

C# Split()函数不是';t给出输出

C# Split()函数不是';t给出输出,c#,asp.net,C#,Asp.net,代码中有什么错误。。?它不起作用了 实际上,我想从数据库的一个字段中拆分条目。。其中的项目用逗号分隔 这就是我正在做的 string str = dataSet.Tables[0].Rows[0]["Ingredients"].ToString(); string[] split = str.Split(','); IList<string> lblListItemIngredients = new List<string>(); foreach (string it

代码中有什么错误。。?它不起作用了

实际上,我想从数据库的一个字段中拆分条目。。其中的项目用逗号分隔

这就是我正在做的

string str = dataSet.Tables[0].Rows[0]["Ingredients"].ToString();

string[] split = str.Split(',');
IList<string> lblListItemIngredients  = new List<string>();
foreach (string item in split)
{
  lblListItemIngredients.Add(item);
}
string str=dataSet.Tables[0]。行[0][“配料”]。ToString();
string[]split=str.split(',');
IList lbllistitemingElements=新列表();
foreach(拆分中的字符串项)
{
lbllistiteMingElements.Add(项目);
}
在我的aspx页面中

<ul>
<li>
<asp:label id="lblListItemIngredients" runat="server></asp:Label>
</li>
</ul>

  • 您必须以某种方式将列表中的数据发送到控件。这并不是因为您给了一个变量与控件id同名而神奇地发生的

    实际上,您应该为变量使用不同的名称,否则它将隐藏已添加到页面对象的属性

    如果您想创建一个HTML列表,那么在一个列表项中放置一个标签是不够的,这不会为每个字符串创建一个列表项。您可以使用中继器:

    <ul>
      <asp:Repeater id="lblListItemIngredients" runat="server">
        <ItemTemplate>
          <li><%# Container.DataItem %></li>
        </ItemTemplate>
      </asp:Repeater>
    </ul>
    

    您必须以某种方式将列表中的数据发送到控件。这并不是因为您给了一个变量与控件id同名而神奇地发生的

    实际上,您应该为变量使用不同的名称,否则它将隐藏已添加到页面对象的属性

    如果您想创建一个HTML列表,那么在一个列表项中放置一个标签是不够的,这不会为每个字符串创建一个列表项。您可以使用中继器:

    <ul>
      <asp:Repeater id="lblListItemIngredients" runat="server">
        <ItemTemplate>
          <li><%# Container.DataItem %></li>
        </ItemTemplate>
      </asp:Repeater>
    </ul>
    

    当您应该使用类似于
    asp:ListBox
    的控件时,您正在页面标记中使用
    asp:label
    控件。从代码中删除
    IList
    声明

    向列表框添加字符串数组的更好方法如下:

    首先,在标记中,将不正确的控件引用更改为列表框:

        <asp:ListBox id="IngredientList" runat="server"></asp:ListBox>
    

    此方法消除了markkup中不正确的标签控件,并从代码隐藏中消除了原始版本中的手动迭代和不必要的IList声明。希望这能有所帮助。

    您在页面标记中使用的是
    asp:label
    控件,而您应该使用类似
    asp:ListBox
    的控件。从代码中删除
    IList
    声明

    向列表框添加字符串数组的更好方法如下:

    首先,在标记中,将不正确的控件引用更改为列表框:

        <asp:ListBox id="IngredientList" runat="server"></asp:ListBox>
    

    此方法消除了markkup中不正确的标签控件,并从代码隐藏中消除了原始版本中的手动迭代和不必要的IList声明。希望这能有所帮助。

    你应该用asp:ListBox而不是Label

    你应该用asp:ListBox而不是Label

    Guffa已经开始使用了,但只是为了完整性,因为它符合你一开始做这件事的精神:-)

    如果您将分数更新到:

       <ul>
       <asp:Literal id="literalIngredients" runat="server" />
       </ul>
    

    Guffa已经开始了,但只是为了完整性,因为它符合你最初的精神:——)

    如果您将分数更新到:

       <ul>
       <asp:Literal id="literalIngredients" runat="server" />
       </ul>
    


    你想在这里干什么?您正在将字符串添加到
    IList
    ,但页面上有一个与列表同名的标签。首先重命名
    IList引用
    ,然后使用
    lbllistitemingCreditions.Text访问标签
    …您的
    runat
    中的引号也不匹配<代码>我已经编辑了你的标题。请看,“,其中的共识是“不,他们不应该”。你想在这里做什么?您正在将字符串添加到
    IList
    ,但页面上有一个与列表同名的标签。首先重命名
    IList引用
    ,然后使用
    lbllistitemingCreditions.Text访问标签
    …您的
    runat
    中的引号也不匹配<代码>我已经编辑了你的标题。请参阅“”,其中的共识是“不,他们不应该”。恕我直言,您不必将列表用作控件的数据源。以迭代方式添加项目是合法的,但是OP没有正确地进行操作。@DavidW:是的,你是对的。我已经更改了措辞,将重点放在问题上。恕我直言,您不必将列表用作控件的数据源。以迭代方式添加项目是合法的,但是OP没有正确地进行操作。@DavidW:是的,你是对的。我改变了措辞,把重点放在这个问题上。否决票?到底为什么?请求对否决票作出解释。如果发布的内容中有我忽略的错误,我希望有机会更正。列表框中的标记与OP的目标完全不同,即它不会生成HTML列表。OP想要什么根本不清楚,因为它没有生成任何输出,并且包含的错误表明OP不确定如何发出任何形式的项目列表,也没有表明一系列
  • 对象是他的目标。listbox是一种完全合法的方式,可以说明一种正确的方式来发送项目列表,我注意到OP应该使用类似listbox的东西作为容器。我恭敬地说,你的否决票是没有道理的。最好不要把它当作个人问题:-)我不是说你的回答错了,我只是想说我说的话,现在已经做了。除非您编辑答案,否则我似乎无法删除我的-1,因为我的投票当前已锁定。@DD59 Done已完成,我猜。这样失去代表真让人沮丧,投反对票?到底为什么?请求对否决票作出解释。如果发布的内容中有我忽略的错误,我希望有机会纠正它。列表框中的标记与OP之后的内容完全不同(即它不会生成HTML列表)。根本不清楚是什么原因