【问题标题】:How to display concatenated sql column values using foreach loop in Razor view [closed]如何在 Razor 视图中使用 foreach 循环显示连接的 sql 列值 [关闭]
【发布时间】:2020-01-04 18:29:51
【问题描述】:

我有一张这样的桌子:

id    | movie        | celeb    | role 
------+--------------+----------+---------
79    | Terminator   | Arnold   | Actor 
174   | Avengers     | Robert   | Actor
174   | Avengers     | Scarlett | Actress

通过使用

STRING_AGG(CONCAT(celeb, ' ', role), ', ') AS CelebRole

在 SQL Server 过程中,我得到以下输出:

id   | movie        | CelebRole 
-----+--------------+----------------------
79   | Terminator   | Arnold Actor 
174  | Avengers     | Robert Actor, Scarlett Actress

现在在我的剃刀视图中,使用 foreach 循环,我这样做:

  @{ var cr = @item.CelebRole.Split(','); }

  @foreach(var c in cr)
  {
    <li>@c</li>
  }

这样在视图中显示记录:

1. Robert Actor
2. Scarlett Actress

我怎样才能拆分 'Robert' 和 'Actor' 这样我得到:

   <sometag>Robert</sometag><br>
   <sometag>Actor</sometag>

【问题讨论】:

    标签: c# sql asp.net-mvc razor


    【解决方案1】:

    尝试不只是通过, 符号进行拆分,而是使用space 字符:

    @{ var cr = @item.CelebRole.Split(new char[] { ',', ' ' }
        , StringSplitOptions.RemoveEmptyEntries); }
    
    @foreach(var c in cr)
    {
        <li>@c</li>
    }
    

    【讨论】:

    • 好的,我试试这个,然后告诉你...
    • Hello @StepUp .. 这会在
    • 中一个接一个地给出结果,它很好地拆分了它,但是如果 Celeb Role 包含 两个词 就像说。 .. 'Action Director' 在这种情况下.. Action & Director 再次分裂.. 那么我该如何处理两个词呢?
    猜你喜欢
    相关资源
    最近更新 更多
    热门标签