Avatar billede jps6kb Novice
28. oktober 2006 - 13:03 Der er 5 kommentarer og
1 løsning

LoginView i Repeater

Hej,

Hvordan gør jeg følgende?

Jeg har en repeater som udskriver en masser poster fra min DB. Fair nok.
På hvert element, vil jeg gerne have et loginView som, hvis man er logget ind viser et link. Fair nok.. MEN i linket vil jeg gerne have en attribut fra mit loginView.. altså fra min datasource.. det kan jeg ikke. :(

Som jeg gerne ville have det skulle være: (ved godt det er en lidt tænkt situation, men altså..)


<asp:repeater id="repeaterItems" runat="server">
      <itemtemplate>
        <tr>
            <td class="tdContentBlog">
                <%# DataBinder.Eval(Container.DataItem, "HTMLBlog") %>
        <asp:LoginView ID="LoginView1" runat="server">
            <LoggedInTemplate>
                <a href="link.aspx?id="<%# DataBinder.Eval(Container.DataItem, "Id") %>">Link</a>
            </LoggedInTemplate>
        </asp:LoginView>
            </td>
        </tr>
        </itemtemplate>
  </asp:repeater>


Den skriver til d.o.

'System.Web.UI.WebControls.Repeater' does not contain a definition for 'DataItem'

Hvad kan man gøre.. synes jeg har været hele arsenalet igennem :p
Avatar billede snepnet Nybegynder
29. oktober 2006 - 21:09 #1
Mon ikke denne her går an:

<asp:repeater id="repeaterItems" runat="server">
    <itemtemplate>
    <tr>
        <td class="tdContentBlog">
            <%# DataBinder.Eval(Container.DataItem, "HTMLBlog") %>
            <asp:LoginView ID="LoginView1" runat="server">
                <LoggedInTemplate>
                    <a href='<%# String.Format("link.aspx?id=", Eval("Id")) %>'>Link</a>
                </LoggedInTemplate>
            </asp:LoginView>
        </td>
    </tr>
    </itemtemplate>
</asp:repeater>

(Eval(...) kræver at det er 2.0 du benytter, men det forestiller jeg mig også at det er ;)
Mvh
Avatar billede snepnet Nybegynder
29. oktober 2006 - 21:10 #2
(altså når du nu bruger en asp:LoginView ;)
Avatar billede jps6kb Novice
29. oktober 2006 - 21:29 #3
Altså, linket kommer på siden, men id er ikke sat..

        <asp:LoginView ID="LoginView1" runat="server">
            <LoggedInTemplate>
                <a href='<%# String.Format("link.aspx?id=", Eval("Id")) %>'>Link</a>
            </LoggedInTemplate>
        </asp:LoginView>

Giver :
http://blah.dk/link.aspx?id=
Avatar billede snepnet Nybegynder
29. oktober 2006 - 22:09 #4
Beklager - min fejl... Der skal self. lige en placeholder ind i udtrykket:
<a href='<%# String.Format("link.aspx?id={0}", Eval("Id")) %>'>Link</a>
Mvh
Avatar billede jps6kb Novice
24. november 2006 - 19:21 #5
Det er jo en af de smukke ting i livet.. altså, ikke at jeg glemte spm'et, men at det virkede :p
Smider du et svar? ;)
Avatar billede snepnet Nybegynder
24. november 2006 - 22:56 #6
Jeps :o)
Mvh
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