Шаблон Razor, содержащий части страницы, которые усы будут отображать на клиенте

Моя страница содержит части, которые будут отображаться на клиенте.

Проблема, с которой я сталкиваюсь, заключается в том, что бритва не отображает части, как я их ожидаю. Например:

<script type="x-tmpl-mustache" id="filterTemplate">
        <img id="showFilter" src="~/Content/Image/arrow.png" />
</script>

Не будет отображаться знак ~, только если я поместил img вне тегов script, он будет делать так, как ожидалось.

Это публикуется в разных путях приложений, поэтому мне нужна бритва, чтобы выяснить, что ~ и заменить его на путь приложения.

Ответ 1

Вы должны использовать помощник @Url.Content, который правильно разрешит путь относительно корня приложения:

<script type="x-tmpl-mustache" id="filterTemplate">
        <img id="showFilter" src='@Url.Content("~/Content/Image/arrow.png")' />
</script>