webForumDet fria alternativet

Object till Gridview

.NET

10 svar · 296 visningar · startad av Bjuris

Medlem sedan juli 2001514 inlägg
Frågan#1

Hej.
Börar med att tala om att jag inte vet om jag kommer att använda rätt terminologi, men hoppas att ni kommer att förstå mitt problem i varje fall.

Det är så att jag har ett object, som i detta fall består av en lista (array)
i.e.
SystemID | UserName | UserID |

och jag skulle vilja presentera detta i en GridView (för att ta vara på de egenskaper den besitter), Hur skall jag då casta om mitt objekt till ett gv Objekt?

Medlem sedan dec. 19996 522 inlägg
#2

Binda den direkt till ditt gridview via datasource?

Medlem sedan juli 2001514 inlägg
#3

Jag vet att det vore den bästa (lättaste) vägen att gå, men jag vill hålla mina värden i objektet så att jag kan exportera till ex XLS & Pdf utan att gå mot databasen igen.

Medlem sedan dec. 19996 522 inlägg
#4

Vad exakt menar du, jag förstår verkligen inte vad som är problemet, varför skulle dina värden i objektet inte kunna exporteras bara för att du binder det

Medlem sedan juli 2001514 inlägg
#5

Jo det är så att visst kan jag binda datat till en Gridview via datasource, dock så är det ganska mycket data, en lååång lista, användaren vill sedan kunna exportera listan till excel samt en komponent som jag gjort som genererar en pdf rapport med olika diagram för hur användaren använder systemet.

Då min sql server redan går tungt idag (ligger en del andra produkter och kör mot den) så vill jag minimera mina anropp mot databasen och bara anroppa den när jag behöver något.
Jag anropar databasen när jag vill ha listan, som jag puttar in i ett objekt. För att enklast lösa den vardagliga listningen så vill jag putta in den i en gridview.
Undrar då om det finns någon typ objectDatasource. Detta för att slippa läsa igenom tabellen i databasen för varje gång användaren vill skapa en rapport.

Medlem sedan dec. 19996 522 inlägg
#6

Cache???

Vid laddning kolla om den finns i cachen, om inte ladda den och lägg till den i cachen.

Medlem sedan juli 2001514 inlägg
#7

Till saken hör att jag använder mig av mina objekt för andra funktioner så det är därför jag vill använda mig av dem för detta också.
Vad jag har för mig är det väl så att chach av GV tar mycker mer minne än chach av en lista?

Medlem sedan dec. 19996 522 inlägg
#8

Du ska ju cacha din lista, det är ju det jag säger. Cacha en hel GV, galet

Medlem sedan juli 2001514 inlägg
#9

ja cacha listan ja, men hur binder jag den till gv?

Medlem sedan dec. 19996 522 inlägg
#10

Via datasource på din gv ? Har du prövat?

Medlem sedan maj 20012 812 inlägg
#11

Väldigt enkelt så ser di kod ut så här.

//-- Check if object is in cache
object myObject = myCache[myObjektId];
if(myObject == null)
{
 //-- nope, not in chache get it from database.
 .....
}

//-- Bind my object to gridview
gd.DataSource = myObject;
gd.DataBind();

Nu är det ju knappast så att du vill binda till ditt object direkt, eftersom GV så fall endast kommer visa en post eftersom du endast bundit ett object till GV, utan du måste stoppa alla dina object i en lista/array och sedan binda denna list/array mot gv.

- M

254 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)