2009-03-27 15 views
19

Asp.net mvc ile çalışıyorum ve bir form oluşturuyorum. Form etiketine bir sınıf özelliği eklemek istiyorum.@ simgesi eklendiğinde neden bu işe yarar?

Bir enctype özelliği eklemek için bir örnek here buldum ve sınıfla değiştirmeyi denedim. Görünümü erişirken bir derleme hatası aldım.

Daha sonra, özellik adının başına @ işareti ekleyen ve çalışan bir kişinin örneğini buldum. Bu harika, ancak ben neden bilmek ve hızlı bir Google arama yararlı olmadığını bilmek biriyim. C# 'nun, bir karakterin kaçan karakterleri göz ardı etmek için bir dizeye eklemesini sağladığını anlıyorum. Bu durumda neden çalışıyor? @ Derleyiciye ne anlatıyor?

Derleme hatası üreten kod nedir? Ayrılmış bir kelimenin başında bir '@' sembolü eklemek siz anahtar kelimeyi kullanmasını sağlar -

C# '
<% Html.BeginForm("Results", "Search", 
    FormMethod.Get, new{@class="search_form"}); %> 

cevap

37

, 'sınıf' ayrılmış bir anahtar kelimedir: nasıl çalışır

<% Html.BeginForm("Results", "Search", 
    FormMethod.Get, new{class="search_form"}); %> 

Kodu bir tanımlayıcı.

Burada düz C# spec dışına bir örnek:

class @class { 
    public static void @static(bool @bool) { 
     if (@bool) System.Console.WriteLine("true"); 
     else System.Console.WriteLine("false"); 
    } 
} 

Not: Bu elbette bir örnektir ve uygulama önerilmez.

+0

Sanırım bu mantıklı olurdu. Bunun cevabını bulmak için çok derinden bakıyordum. – GrillerGeek

+0

Nasıl hissettiğini biliyorum. =) –

+0

Güzel! Bunun farkında değildim ... +1 –

İlgili konular