Конкатенація рядків у Razor


84

Як мені об’єднати два рядки в синтаксисі Razor?

Якби я мав: @Model.addressі @Model.cityі хотів би, щоб вийшов, address cityщо б я робив? Це так просто, як робити @Model.address + " " + @Model.city?


2
Це не може бути простіше, ніж це! :)
фон проти.

Відповіді:


200

Використовуйте синтаксис парентезу Razor:

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

або

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

Оновлення : З C # 6 ви також можете використовувати $ -Notation (офіційно інтерпольовані рядки):

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


Я знайшов це корисним, коли робив рядок. Приєднуйтесь до речення @if. Усередині скривистих дужок це не спрацювало: string.Join(",", Model.AppInfo.MailingCodes); але використовуючи відповідь тут, це справді спрацювало:@(string.Join(",", Model.AppInfo.MailingCodes))
Познач


4

Можна давати ось так ....

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

0

Ви можете використовувати:

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

-2

плюс працює чудово, я особисто віддаю перевагу використанню функції concat.

var s = string.Concat (рядок 1, рядок 2, рядок, 3 тощо)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.