Too many characters in character literal

Maykrofsoft’un saç baş yoldurtan ürünlerinden yalnızca birisi olan Visual Studio .NET (2008 versiyonunda karşılaştım bu problemle, önceden belirtmek istedim) veri bağlama işlemleri sırasında aşağıdaki gibi bir hata alabilirsiniz zaman zaman,

“Too many characters in character literal”

Şimdi efendim bunun nedenine gelince, bi kere .NET “runat=server” tag’ına sahip herangi bir sunucu kontrolünde istemci taraflı “onlick, onpress” vs. gibi işlemlere izin vermiyor. Misal,

<form id="form1" runat="server" onload="alert('Yukarıdaki hataya neden olur!')" >

Aldığınız hatanın muhtemel nedenlerinin başında bu geliyor olabilir. Tavsiyem sunucu kontrolleri üzerinde bu tarz birşeyler yaptıysanız bunları kaldırıp yerine,

protected void Page_Load(object sender, EventArgs e)
{
         form1.Attributes.Add("onload", "alert('Bu çalışır!!!');");
}

gibi bir yol seçebilirsiniz.

Bu hataya neden olabilicek başka bir neden de veri bağlama işlemleri sırasında sayfanızın HTML kodunda veri bağlama yazım kurallarına dikkat edilmemesi olabilir.  Misal,

<asp:HyperLink ID="titleLink1" runat="server"
Text="<%# Eval('title') %>" ToolTip="<%# Eval('title') %>"></asp:HyperLink>

yazdığınızda, yukarıda bahsi geçen hatadan iki tane alırsınız. Nedeni ise veri bağlanan bölümün dışında çift tırnak, verinin bağlandığı string’lerin ise tek tırnak içerisine alınmış olmasıdır. Aslında bunun tam tersi olması gerekir. Yani, yukarıdaki ifadenin yerine,

<asp:HyperLink ID="titleLink1" runat="server" Text='<%# Eval("title") %>'
ToolTip='<%# Eval("title") %>'></asp:HyperLink>

yazdığınızda sorunun kaybolacağını göreceksiniz. Haydi bakalım….

, , ,

8 Responses to Too many characters in character literal

  1. mustafa 29 Ocak 2009 at 1:49 AM #

    çok teşekkür ederim Ahmet Bütün beyefendi. allah tuttuğunuzu altın tumadığınızı gümüş yapsın. iki saat uğraştığım hataya bi çırpıda çözdüm.

  2. @bütün 29 Ocak 2009 at 1:02 PM #

    rica ederim Mustafa elimden geldiği kadar yardımcı olmaya çalışıyorum 🙂

  3. omer 15 Kasım 2009 at 2:35 AM #

    tşk ettim hocam google da ilk sonuçta cevabı buldum tşkler 🙂

    • @bütün 15 Kasım 2009 at 5:59 PM #

      rica ederim.

      google’da da ilk sırada çıktığım sorgular da var artık hemi 🙂 (ben google analytics’ten görüyorum ilk sırada çıktığım sorguları, biraz şımarayım istedim)

      :):)

  4. by_sakal 17 Şubat 2010 at 12:15 PM #

    Ahmet bey harikasınız. Sayenizde 1 gün takıldığım sorunum çözüldü. Hep yabancı sitelerde araştırdım ben bu sorunu fakat, sizin bloğunuza denk geldim çok şükür. Çatır çatır da açıklamışsınız, helal olsun!! 😀

    • @bütün 21 Şubat 2010 at 6:32 PM #

      Selam by_sakal,

      Askerdeyim ben şu an ve senin yorumunu yeni gördüm ve inan o kadar mutlu oldum ki. Yorumunuz askerde ilaç gibi geldi bana 🙂

      Makalemin işinize yaramış olması da ayrıca sevindirici benim için. Bu sitenin bir işe yaradığı duygusunu güçlendiriyor bende. Teşekkürler

  5. sebahattin kumpınar 12 Mart 2010 at 4:06 PM #

    Hakkaten işime çok yaradı Allah razı olsun.

    • @bütün 13 Mart 2010 at 11:18 AM #

      çok sevindim yazımın işine yaradığına Sebahattin, beni takip et lütfen 🙂

Bir cevap yazın

Font Resize