[C#] Error 3 Cannot apply indexing with [] to an expression of type...

yellowspam

Erfahrenes Mitglied
Hi@all:

Ich habe mal wieder ein Problem.Und zwar habe ich eine Funktion die die IDs eines Downloads, der in nem GridView steht, vergleicht um diesen dann zu löschen.

Aber mein Chef hat gesagt dass ich Dirty-Code benützt habe und hat nen Code reingeschrieben der sauberer ist.
Nun kriege ich beim debuggen folgende Fehlermeldung:


Error 3 Cannot apply indexing with [] to an expression of type 'System.Web.UI.WebControls.GridViewRow' D:\Projects\Projects_2007\bluestep.DownloadManager.Solution\bluestep.DownloadManager\bluestep.DownloadManager\DownloadList.aspx.cs 93 57 bluestep.DownloadManager


hier der Source der Funktion:

C#:
//Todo: nicht über Cells[x].Text den Wert auslesen ...
        void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {

            Classes.Downloads dl = new bluestep.DownloadManager.Classes.Downloads(Classes.Helper.FilePath);
            //Guid ID = new Guid(this.GridView1.Rows[e.RowIndex].Cells[2].Text.ToString());
            
            //Todo: Chaos copyright Stefan
            string guidString = this.GridView1.DataKeys[this.GridView1.Rows[e.RowIndex]["ID"]];
            
            Guid ID;
            if (guidString != string.Empty)
            {
                ID = new System.Guid(guidString);
            }

            dl.DeleteDownload(ID);

            BindGrid();

        }

Nun weiß ich nicht wirklich woran es liegt..hoffe ihr könnt mir nen Tipp geben.
 
Zurück