Forum: ASP.NET |
Thema:
Data Repeater Problem |
Von:
Stephan (
26.03.2004 11:45) |
Hallo,
ich habe in einer meiner Seiten einen Repeator eingebaut und möchte aber gewisse Bedingungen abfragen beim Aufbau der einzelnen Zeilen.
Folgendes funktioniert (im ItemTemplate):
<tr>
<td align="right" cass="texttabelle">Abgeschlossen:</td>
<td colspan="2" class="texttabelle"><%# iif(databinder.eval(container.Dataitem,"finished"),"Ja","Nein")%></td>
</tr>
Folgendes leider nicht:
<%# if not databinder.eval(container.Dataitem,"From") = Constant.NULLDATE then%>
<tr>
<td align="right" class="texttabelle">Dauer:</td>
<td colspan="2" class="texttabelle">von
<%# databinder.eval(container.Dataitem,"From")%>
bis
<%# databinder.eval(container.Dataitem,"Till")%>
</td>
</tr>
Warum?
Danke im Voraus
Stephan K-W
Betreff |
Von |
Datum |
|
  |
Re: Data Repeater Problem
Servus Stephan,<br>ich arbeite zwar meist nur mit c# , aber meiner Meinung nach sind da ein paar Fehler.<br><br>1. Zeile...Raute muss weg.<br>2. If benötigt end if<br>3. constant --> muss doch constants... |
 |
 |
 |
|
|
Simon
Gorski
|
26.03.2004 12:59 |
|
  |
Re: Data Repeater Problem
Zur Erklärung:<br>Ohne Raute findet das VB Programm den passenden DataContainer nicht und gibt den Fehler aus, dass die Variable nicht definiert ist.<br>Das End-IF war ein Copy Paste Fehler und ist im... |
 |
 |
 |
|
|
Stephan
|
26.03.2004 13:58 |
|
  |
Re: Data Repeater Problem
Hallo Stephan,<br>verstehe.<br><br>Und was für eine Fehlermeldung bringt er?<br>Was steht hinter deiner Konstante? - Kannst du diese vergleichen mit dem Wert aus dem DataContainer?<br><br>mfg simon g. |
 |
 |
 |
|
|
Simon
Gorski
|
26.03.2004 14:22 |
|
  |
Re: Data Repeater Problem
Die Fehlermeldung ist leider nicht sehr aufschlussreich:<br>In dierser Zeile:<br><%# if not databinder.eval(container.Dataitem,"From") = Constant.NULLDATE then%><br><br>bekomme ich den... |
 |
 |
 |
|
|
Stephan
|
26.03.2004 15:37 |
|
|
Hannes
Preishuber
|
26.03.2004 15:31 |
|
  |
Re: Data Repeater Problem
Ich habe nun einen anderen Vergleich versucht und folgenden Code geschrieben:<br><br><%# if len(trim(databinder.eval(container.Dataitem,"Place"))) >0 then<br> Response.Write("<tr>")<br> Response.Write("<td... |
 |
 |
 |
|
|
Stephan
|
29.03.2004 07:41 |
|
  |
Re: Data Repeater Problem
nimm doch ne funktion die deinen job erledigt<br><br><%# myfunc(container.Dataitem,"From")%><br><br><br>function myfunc(from as ??)<br>if from=?? then<br>myfunc="<tr>+<td align="right" ....<br>return myfunc<br>end... |
 |
 |
 |
|
|
Hannes
Preishuber
|
29.03.2004 08:14 |
|
  |
Re: Data Repeater Problem
Danke für diesen Tipp funktioniert einwandfrei.<br>Nur eine kleine Anmerkung:<br>Databinder.Eval konvertiert nicht alles in in einen String sondern liefert den original Datentypen zurück.<br>In meinem Fall... |
 |
 |
 |
|
|
Stephan
|
30.03.2004 07:18 |
|
|
Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!