Avatar billede tmo1419 Nybegynder
14. august 2007 - 10:52 Der er 6 kommentarer

Server Tag not well formed

Hej
Jeg har en side, der fra an datagrid skal linke videre til en anden side via et ID, som findes i datagridet. Jeg bruger følgende linie, men for besked om at "Server tag is not well formed". Det er formentlig omkring Postback URL for hvis jeg bruger en konstant (fast streng), optræder fejlen ikke. Er der en som kan se lyset?

kodelinie:
<asp:LinkButton ID="LinkButton2" runat="server" PostBackUrl="~/Klubhus.aspx?ArticleId=<%# Eval("Id") %>" CssClass="articleLink"><%# Eval("Header")%></asp:LinkButton>
Avatar billede softspot Forsker
14. august 2007 - 10:54 #1
Prøv denne i stedet:

<asp:LinkButton ID="LinkButton2" runat="server" PostBackUrl='~/Klubhus.aspx?ArticleId=<%# Eval("Id") %>' CssClass="articleLink"><%# Eval("Header")%></asp:LinkButton>

Man må ikke bruge anførselstegn omkring "databinding", her skal man benytte apostroffer...
Avatar billede tmo1419 Nybegynder
14. august 2007 - 11:12 #2
Tusind tak - det var straks bedre, meeeen... Næste fejl (se stacktrace). Min Id i databasen er en int. Skal jeg så i URL'en konvertere Eval("Id") til int eller hvad - og hvordan...

FormatException: Input string was not in a correct format.]
  System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal) +2725283
  System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info) +102
  System.String.System.IConvertible.ToInt32(IFormatProvider provider) +43
  System.Convert.ChangeType(Object value, TypeCode typeCode, IFormatProvider provider) +293
  System.Web.UI.WebControls.Parameter.GetValue(Object value, String defaultValue, TypeCode type, Boolean convertEmptyStringToNull, Boolean ignoreNullableTypeChanges) +264
  System.Web.UI.WebControls.Parameter.get_ParameterValue() +66
  System.Web.UI.WebControls.ParameterCollection.GetValues(HttpContext context, Control control) +254
  System.Web.UI.WebControls.ObjectDataSourceView.ExecuteSelect(DataSourceSelectArguments arguments) +281
  System.Web.UI.DataSourceView.Select(DataSourceSelectArguments arguments, DataSourceViewSelectCallback callback) +17
  System.Web.UI.WebControls.DataBoundControl.PerformSelect() +149
Avatar billede softspot Forsker
14. august 2007 - 11:26 #3
Jeg vil mene at flg. kan gøre det:

<asp:LinkButton ID="LinkButton2" runat="server" PostBackUrl='~/Klubhus.aspx?ArticleId=<%# Convert.ToString(Eval("Id")) %>' CssClass="articleLink"><%# Eval("Header")%></asp:LinkButton>
Avatar billede neoman Novice
14. august 2007 - 11:39 #4
Check lige hvordan dine select parametre for din object data source ser ud: har de den rigtige type defineret?
Avatar billede tmo1419 Nybegynder
14. august 2007 - 11:49 #5
Ja det skulle jeg mene. Det med Convert.. foreslået af softspot virker ikke...

<SelectParameters>
<asp:QueryStringParameter DefaultValue="null" Name="articleId" QueryStringField="ArticleId" Type="Int32" />
</SelectParameters>
Avatar billede tmo1419 Nybegynder
14. august 2007 - 11:55 #6
Hvis jeg indsætter en konstant som her så virker det...

<asp:LinkButton ID="LinkButton3" runat="server" PostBackUrl='~/Klubhus.aspx?ArticleId=12' CssClass="articleLink"><%# Eval("Header")%></asp:LinkButton>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester