webForumDet fria alternativet

Server.HtmlEncode i en Repeater!

.NET

5 svar · 487 visningar · startad av mottosson

Medlem sedan mars 200339 inlägg
Frågan#1

Jag använder en repeater för att presentera gästboksinlägg och där får det inte skrivas ut html-kod så dom kan lägga in länkar eller göra nått sattyg.
Jag vill använda mig av Server.HtmlEncode för detta men jag vet inte hur jag ska lägga in den i koden i repeatern...

Såhär ser det ut nu:
<%# DataBinder.Eval(Container.DataItem, "text") %>

Men jag vill att det ska se ut nått sånt här:
<%# Server.HtmlEncode(DataBinder.Eval(Container.DataItem, "text")) %>

Men som ni själva förstår så funkar inte detta!

Medlem sedan jan. 20011 140 inlägg
#2

Gör en funktion som fixar det

public function html(inlagg as string)
return server.htmlencode(inlagg)
end function

Och där du skriver ut det

<%# html(DataBinder.Eval(Container.DataItem, "text")) %>
Medlem sedan mars 200339 inlägg
#3

Det blir samma fel som om jag skulle skrivit server.htmlencode istället för att göra en egen funktion!

The best overloaded method match for 'ASP.guestbook_aspx.ToHtml(string)' has some invalid arguments.

Medlem sedan sep. 20011 914 inlägg
#4

Testade

<%# server.htmlencode(container.dataitem("cust_fName")) %>

och det funkar fint.

Medlem sedan maj 20012 812 inlägg
#5

Jag brukar använda mig av eventet OnDataItemBound, dels för att slippa ASP kod i min aspx sida och dels för att komma från Databinder.eval() som är rätt långsam.

OnDataItemBound lägger man i sin codebehindclass och där i kan du utan problem kör server.htmlencode() på dina värden.

Det fungerar att göra som du gör, men är "snyggare" att lägga det i eventet, samt att man separera sin HTML-kod och ASP-kod mer

- M

Medlem sedan mars 200339 inlägg
#6

Tack för all hjälp!

Löste det på följande sätt:

<%# Server.HtmlEncode(DataBinder.Eval(Container.DataItem, "text").ToString()) %>

257 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)