Razor ViewEngine: Bagaimana cara keluar dari simbol "@"?


101

Saya mencoba untuk mengeluarkan beberapa pegangan Twitter di ASP.NET MVC3 dalam hubungannya dengan Twitter @Anywhere API, dan saya belum bisa menemukan cara untuk benar-benar keluar dari simbol "@" dalam tampilan Razor.

Adakah yang tahu apa sintaks untuk keluar dari karakter "@" di Razor?

Saya sudah mencoba menggunakan <text></text>dan itu menghasilkan kesalahan JIT.


2
Anda juga dapat menggunakan entitas HTML &#64;.
rsenna

Jawaban:


143

Anda harus menggunakan @@ untuk keluar dari simbol @.

Satu hal penting yang harus diperhatikan adalah Anda TIDAK perlu keluar dari simbol @ jika ada di dalam alamat email. Pisau cukur harus cukup pintar untuk mengetahuinya sendiri.


4
<a href="" title="this @@ won't work"> </a>, kesalahan sintaksis pada VS dan kesalahan pengurai pada waktu proses.
Tien Do

1
@ Tien melihat kode karakter HTML terakhir di sini berfungsi untuk saya: stackoverflow.com/a/13584640/84206
AaronLS

25

Jika Anda menambahkan tag meta Twitter

dan nama pengguna Twitter Anda, katakanlah, foobar

seharusnya terlihat seperti ini

<meta name="twitter:site" content=@("@foobar")>

16

jika Anda perlu mengomentari simbol @ dalam kode css dan @@ tidak akan berfungsi, gunakan ini:

@("@@font-face"){ ... css ...}

1
Ini adalah metode terbaik karena entitas HTML tidak membantu di dalam CSS.
ChrisF

2

Saya memiliki kasus aneh lainnya: berikan '@' + @Model.SomePropertyke link href.

Solusi terbaik untuk kasus ini diberikan IMO dalam jawaban untuk pertanyaan serupa ini. Keduanya @@dan @:tidak berfungsi saat menggunakan kode html &#64;akan memperumit masalah.

Jadi, kode saya adalah <a href="~/path/?query=@('@')@Model.SomePropery">

@Html.Raw('@')@Model.SomePropery akan berhasil juga.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.