You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET Core:如何在foreach循环中为int值添加连字符分隔?

解决方案

方法1:用String.Join简化实现(推荐)

直接通过LINQ将每个尺寸转为带<span>的字符串,再用连字符拼接,代码更简洁:

@string.Join("-", SizeList.Select(size => $"<span class=\"size\">{size}</span>"))

输出的HTML结构是:

<span class="size">14</span>-<span class="size">16</span>-<span class="size">18</span>

前端显示就是14-16-18,同时保留每个尺寸的size类样式。

方法2:保留foreach循环处理

如果一定要用foreach循环,加个标记判断是否为第一个元素,避免首尾出现多余连字符,同时去掉原代码里的空格:

bool isFirstItem = true;
foreach (int size in SizeList)
{
    if (!isFirstItem)
    {
        @"-";
    }
    <span class="size">@size</span>
    isFirstItem = false;
}

注意点

原代码里<span class="size">@size </span>的末尾空格是导致输出带空格的原因,不管用哪种方法都要去掉这个多余空格。

内容的提问来源于stack exchange,提问作者RoyalDesigner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 18:52:16