我有一个看似非常小的问题,但我无法找到解决方案:
在Razor视图中,我有类似的东西:
<p>
@if (someCondition){
foreach (Sometype s in Model.ListOfSomeTypes){
@s.Name @//There is a space in front here.
}
}
</p>
但是我想让所有的名字都用逗号分隔,所以我基本上想做这样的事情:
<p>
@if (someCondition){
foreach (Sometype s in Model.ListOfSomeTypes){
@s.Name,
}
}
</p>
然而,剃刀吓坏了。我怎样才能达到这样的效果呢?
我尝试过这样的变化:
@{','} @s.Name @//No good
@"," @s.Name @//No good
@{","} @s.Name @//No good
@StringVariableContainingComma @s.Name @//This works, but seems to be very unnessecary to me.
聚苯乙烯。我知道上面建议的逗号分隔的解决方案的解决方案并不适当。删除条件以便于阅读问题。
答案 0 :(得分:4)
使用常规括号指定explicit code nugget。
@(s.Name), @(...)
答案 1 :(得分:4)
<text>
代码应该为您完成。
<p>
@if (someCondition){
foreach (Sometype s in Model.ListOfSomeTypes){
@s.Name<text>, </text>
}
}
</p>
答案 2 :(得分:1)
这应该这样做 - 虽然你会有尾随逗号
@foreach (Sometype s in Model.ListOfSomeTypes){
@(s.Name+",")
}
或
@if (someCondition){
@String.Join(",", Model.ListOfSomeTypes.Select(s => s.name));
}
答案 3 :(得分:0)
<p>
@if (someCondition){
foreach (Sometype s in Model.ListOfSomeTypes){
@s.Name<span>, </span>@s.City
}
}
</p>
你可以使用span标签