Avatar billede ircnoob Nybegynder
29. november 2006 - 11:56 Der er 8 kommentarer og
1 løsning

Binde session til datagrid

Hej,
får nedenstående fejl.. men trænger lige til et par friske øjne på, hvad problemet er... tak :)       
       
Exception Details: System.InvalidCastException: Unable to cast object of type 'System.Collections.Generic.List`1[Film]' to type 'System.Data.DataSet'.

if (Session["basket"] == null)
        {
            Session["basket"] = new List<Film>();
        }
List<Film> basket = (List<Film>)Session["basket"];

if (Session["basket"] != null)
    {
          DataTable dt = ((DataTable)Session["basket"]).Tables[1];
            DataView dv = dt.DefaultView;
            GridView1.DataSource = dv;
            GridView1.DataBind();
    }
Avatar billede ircnoob Nybegynder
29. november 2006 - 11:59 #1
DataTable dt = ((DataTable)Session["basket"]).Tables[1] =
DataTable dt = ((DataSet)Session["basket"]).Tables[1] ..
Avatar billede snepnet Nybegynder
29. november 2006 - 12:18 #2
En List<Film> er jo ikke noget DataSet.... Det er vel meningen at du vil binde direkte mod din liste:

List<Film> liste = Session["basket"] as List<Film>;
if (liste != null)
{
  GridView1.DataSource = liste;
  GridView1.DataBind();
}

Mvh
Avatar billede ircnoob Nybegynder
29. november 2006 - 13:07 #3
The data source for GridView with id 'GridView1' did not have any properties or attributes from which to generate columns.  Ensure that your data source has content.
Avatar billede ircnoob Nybegynder
29. november 2006 - 13:10 #4
Fejlen kommer dog allerede inden jeg lægger data i
Avatar billede snepnet Nybegynder
29. november 2006 - 13:22 #5
Det betyder at du ikke har nogle public properties på din Film-klasse... Det skal du have hvis du ønsker at benytte den i forbindelse med databinding - f.eks. sådan en som denne:

private string m_Title;

public string Title
{
  get{return m_Title;}
}

Mvh
Avatar billede ircnoob Nybegynder
29. november 2006 - 16:07 #6
det har jeg ...
Avatar billede snepnet Nybegynder
29. november 2006 - 16:39 #7
Må jeg se din filmklasse?

Men ellers ... du kan jo starte med et eksempel hvor du ikke bikser rundt med session eller noget - og bare lægge data i listen og viser den i et grid:

// i page_load
if(!IsPostBack)
{
  List<Film> liste = new List<Film>();
  liste.Add(new Film());
  GridView1.DataSource = liste;
  GridView1.DataBind();
}

... Kan self. være du ikke har en default constructor, men så må du jo bare bruge den du har.

Mvh
Avatar billede ircnoob Nybegynder
29. november 2006 - 17:00 #8
Fyr et svar .. og spørg ej mere :p
Avatar billede snepnet Nybegynder
30. november 2006 - 07:41 #9
Ok :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



Seneste spørgsmål Seneste aktivitet
I dag 10:28 PDFEngine Af barth i Andet software
I går 22:40 Butte indhold i celler Af lurup i Excel
I går 15:24 Power Query Af djsimonsen i Excel
I går 14:43 Hvis ikke på liste, tilføj værdier til liste Af TheLibrarian i Excel
I går 11:33 Windows 11 Af ranni i Windows