Łączenie ciągów w Razor


Odpowiedzi:


200

Użyj składni rodzicielskiej Razor:

@(Model.address + " " + Model.city)

lub

@(String.Format("{0} {1}", Model.address, Model.city))

Aktualizacja : w C # 6 możesz również użyć $ -Notation (oficjalnie interpolowane ciągi):

@($"{Model.address} {Model.city}")


Okazało się to przydatne, gdy robiłem ciąg znaków.Join wewnątrz klauzuli @if. W nawiasach falistych to nie zadziałało: string.Join(",", Model.AppInfo.MailingCodes); ale używając odpowiedzi tutaj, zadziałało:@(string.Join(",", Model.AppInfo.MailingCodes))
Mark

10

String.Format działa również w Razor:

String.Format("{0} - {1}", Model.address, Model.city)

4

Możesz tak dawać ...

<a href="@(IsProduction.IsProductionUrl)Index/LogOut">

0

Możesz użyć:

@foreach (var item in Model)
{
  ...
  @Html.DisplayFor(modelItem => item.address + " " + item.city) 
  ...

-2

plus działa dobrze, osobiście wolę używać funkcji concat.

var s = string.Concat (ciąg 1, ciąg 2, ciąg, 3 itd.)

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.