Avatar billede dkkarpen Nybegynder
04. oktober 2003 - 13:00 Der er 1 kommentar og
1 løsning

Problem med check om felt er tomt

Halløj!

Jeg har prøvet på at lave en funktion til at tjekke om et felt er tomt i min db. Det fejler dog...

Fejlmeddelelse:
The best overloaded method match for 'ASP.medlemmer3_aspx.checkFoto(string)' has some invalid arguments

i linien:
<td class="ramme"><%# checkFoto(DataBinder.Eval(Container.DataItem, "foto")) %></td>

Kode:
<%@ Page language="c#" AutoEventWireup="true" Debug="true" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<script runat="server">

  void Page_Load (Object obj, EventArgs e) {
    //String connStr="Provider=Microsoft.Jet.OLEDB.4.0; Ole DB Services=-4; Data Source=D:\\websider\\resadmin\\ludo98dk\\ludo98.dk\\www\\db\\ludo.mdb";
    String connStr="Provider=Microsoft.Jet.OLEDB.4.0; Ole DB Services=-4; Data Source=C:\\webs\\ludo2\\db\\ludo.mdb";
    OleDbConnection conn = new OleDbConnection(connStr);
    OleDbDataAdapter adapter = new OleDbDataAdapter("select navn, adresse, postnr, city, telefon, mobil, email, loginantal, foto from medlemmer",conn);
    DataSet ds = new DataSet();

    adapter.Fill(ds);
    adapter.Dispose();
    myRepeater.DataSource = ds;
    myRepeater.DataBind();


  }

public string checkFoto(String foto)
{
    if(foto != null)
    {
        return "<img src='uploads/" + foto + "'>";
    }
    else
    {
        return "";
    }
}
</script>
<HTML>
  <HEAD>
    <meta name="GENERATOR" Content="Microsoft Visual Studio 7.0">
    <meta name="CODE_LANGUAGE" Content="C#">
    <meta name="vs_defaultClientScript" content="JavaScript (ECMAScript)">
    <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
    <link rel="stylesheet" type="text/css" href="css/style.css" />
  </HEAD>
  <body>
    <form id="control3" method="post" runat="server">
      <p align="center">

        <asp:repeater id="myRepeater" runat="server">
        <HeaderTemplate>
        <table>
        <tr class="ramme-baggrund4">
          <td>Icon</td>
          <td>Navn & e-mail</td>
          <td>Adresse</td>
          <td>Telefon</td>
          <td>Rediger</td>
        </tr>
        </HeaderTemplate>
        <ItemTemplate>
        <tr bgcolor="#ffffff">
            <td class="ramme"><%# checkFoto(DataBinder.Eval(Container.DataItem, "foto")) %></td>
            <td class="ramme"><%# DataBinder.Eval(Container.DataItem, "navn") %><br /><%# DataBinder.Eval(Container.DataItem, "email") %></td>
            <td class="ramme"><%# DataBinder.Eval(Container.DataItem, "adresse") %><br /><%# DataBinder.Eval(Container.DataItem, "postnr") %>&nbsp;<%# DataBinder.Eval(Container.DataItem, "city") %></td>
            <td class="ramme"><%# DataBinder.Eval(Container.DataItem, "telefon") %><br /><%# DataBinder.Eval(Container.DataItem, "mobil") %></td>
        </tr>
        </ItemTemplate>
        <FooterTemplate>
            </table>
        </FooterTemplate>
        </asp:Repeater>
      </p>
    </form>
  </body>
</HTML>

Hvad er galt? Noget med datatypen?
Avatar billede z42cool Nybegynder
06. oktober 2003 - 14:12 #1
Der er fordi DataBinder.Eval(Container.DataItem, "foto") returnerer et object og din metode tager en parameter der er en string, så du skal f.eks. sige: checkFoto(DataBinder.Eval(Container.DataItem, "foto").ToString())
Avatar billede dkkarpen Nybegynder
06. oktober 2003 - 17:49 #2
Perfekt!
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
Kurser inden for grundlæggende programmering

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