Saya membuat contoh situs ASP.NET MVC 3 menggunakan Razor sebagai view engine. Sintaks silet dimulai dengan @
karakter mis @RenderBody()
. Jika saya menulis @test di halaman cshtml saya itu memberi saya kesalahan parse
CS0103: Nama 'tes' tidak ada dalam konteks saat ini
Bagaimana cara saya keluar dari karakter '@'?
razor
asp.net-mvc-3
ajay_whiz
sumber
sumber
@
di kurung kurawal. Saya berhasil membuatnya bekerja dengan menuliskannya seperti ini:@(@new)
Jawaban:
@@
harus melakukannya.sumber
@RazorCodePart1 @@ @RazorCodePart2
misalnya literal @ antara dua cuplikan kode Razor.<style>
tag di halaman pisau cukur saya, yang harus menyematkan arahan '@media {}', jadi pengodean html bukan opsi; hanya @@ berfungsi.Razor @ escape char toimbol ...
atau
sumber
gunakan
<text></text>
atau cara yang lebih mudah@:
sumber
@Html.Raw("@")
Sepertinya saya bahkan lebih dapat diandalkan daripada@@
, karena tidak dalam semua kasus@@
akan melarikan diri.Karena itu:
akan menjadi:
sumber
Alih-alih entitas HTML saya lebih suka menggunakan
@Html.Raw("@")
.sumber
@@ adalah karakter pelarian untuk @ dalam tampilan Razor seperti yang dinyatakan di atas.
Namun Razor mencoba untuk bekerja ketika '@' hanya '@' dan di mana itu menandai kode C # (atau VB.Net). Salah satu kegunaan utama untuk ini adalah untuk mengidentifikasi alamat email dalam tampilan Razor - tidak perlu keluar dari karakter @ dalam alamat email.
sumber
Untuk pertanyaan tentang
@RazorCodePart1 @@ @RazorCodePart2
, Anda perlu urutan:Saya tahu, ini terlihat agak aneh, tetapi berhasil dan Anda akan mendapatkan karakter literal '@' di antara blok kode.
sumber
Saya hanya punya masalah yang sama. Saya menyatakan variabel yang meletakkan teks saya dengan @.
sumber
ini bekerja untuk saya
Atau Anda dapat menggunakan: @@ Alan_van_Buuren
: D
sumber
Anda dapat menggunakan @@ untuk tujuan ini. Suka
var email = firstName + '\@@' + domain;
sumber
cukup tambahkan variabel dalam file CSHTML
var myVariable = @"@";
dan tambahkan ke tata letak Anda
<span class="my-class"><a href="@myVariale" target="_blank" >link text</a></span>
sumber
Saya mencoba semua opsi di atas dan tidak ada yang berhasil. Inilah yang saya lakukan yang berhasil:
Saya membuat variabel string dan meneruskan semua kode pola RegEx ke dalamnya, kemudian menggunakan variabel dalam html, dan Razor keren dengan itu.
sumber
Saya tidak bisa mendapatkan semua ini untuk bekerja di dalam atribut placeholder saya, jadi saya menggunakan karakter khusus xml.
Lihat lebih banyak contoh di sini. https://www.dvteclipse.com/documentation/svlinter/How_to_use_special_characters_in_XML.3F.html
sumber
Sebenarnya @ harus digunakan dengan sintaksis Razor Keywords atau pada variabel / model untuk mengikat suatu Nilai.
Untuk Misalnya: jika tes diberikan dengan nilai yaitu @ {var test = "ABC"} maka Anda bisa mendapatkan nilai dengan pengaturan karena @test di mana saja adalah halaman cshtml di bagian html. jika tidak, gunakan sederhana sebagai @ Html.DisplayName ("test")
sumber
Saya tahu pertanyaan ini sudah lama, tetapi saya mencoba semua hal di atas dan itu tidak membantu saya keluar dari karakter "@" dalam kerangka penuh ASP.NET (MVC 5) di dalam URL. Berdasarkan jawaban Terje Solem, kode UTF-8
%40
bekerja untuk saya. ini adalah URL asli yang saya coba jangkau:https://unpkg.com/@google/[email protected]/dist/markerclustererplus.min.js
dan dengan kode di dalamnya:
sumber