You have to instances of GUID with the same name? Try changing the second
one. Or remove the ToString() method. Lemme know what happens.

On Wed, Nov 26, 2008 at 8:52 AM, Daniel G. Samborski <
[EMAIL PROTECTED]> wrote:

>  Hi, I'm Daniel and I'm new in this group,
> Sorry, but my english isn't good.
>
> I have a problem when I use *DataKeyNames* in C#, I use SQL server 2000
> whit UniqueIdentifier in an ID register.
> This is the code of GridView
>
> <asp:GridView DataKeyNames="IdSitio" ID="grdListadoDeSitio" runat="server"
> Caption="Listado de todos los sitios" AutoGenerateColumns="False"
> AutoGenerateDeleteButton="True"
> OnRowDeleting="grdListadoDeSitio_RowDeleting"
> BackColor="LightGoldenrodYellow" BorderColor="Tan" BorderWidth="1px"
> CellPadding="2" ForeColor="Black" GridLines="None" Font-Size="X-Small">
>                 <Columns>
>                     <asp:BoundField DataField="IdSitio"
> HeaderText="IdSitio" ReadOnly="True" Visible="False" />
>                     <asp:BoundField DataField="Nombre" HeaderText="Sitio"
> ReadOnly="True" />
>                     <asp:BoundField DataField="URL" HeaderText="URL"
> ReadOnly="True" />
>                     <asp:BoundField DataField="Comentario"
> HeaderText="Comentario" ReadOnly="True" />
>                 </Columns>
>                 <SelectedRowStyle BackColor="DarkSlateBlue"
> ForeColor="GhostWhite" />
>                 <PagerStyle BackColor="PaleGoldenrod"
> ForeColor="DarkSlateBlue" HorizontalAlign="Center" />
>                 <HeaderStyle BackColor="Tan" Font-Bold="True" />
>                 <AlternatingRowStyle BackColor="PaleGoldenrod" />
> </asp:GridView>
>
> And I use to read the IdSitio this code:
>
> Guid id = new
> Guid(grdListadoDeSitio.SelectedDataKey["IdSitio"].ToString());
> oSitiosAmigos.LoadByPrimaryKey(id);
>
> But, I have this error message:
>
> Object reference not set to an instance of an object.
> Description: An unhandled exception occurred during the execution of the
> current web request. Please review the stack trace for more information
> about the error and where it originated in the code.
>
> Exception Details: System.NullReferenceException: Object reference not set
> to an instance of an object.
>
> Source Error:
>
>
> Line 52:     {
> Line 53:         // Guid id= new
> Guid(grdListadoDeSitio.Rows[e.RowIndex].Cells[1].Text);
> Line 54:         Guid id = new
> Guid(grdListadoDeSitio.SelectedDataKey["IdSitio"].ToString());
> Line 55:         oSitiosAmigos.LoadByPrimaryKey(id);
> Line 56:         oSitiosAmigos.MarkAsDeleted();
>
>
> Source File: c:\Documents and Settings\Daniel\Mis documentos\Visual Studio
> 2005\Projects\elpeloenelhuevo\elpeloblog\Altas\SitiosAmigos.aspx.cs    Line:
> 54
>
> Stack Trace:
>
>
> [NullReferenceException: Object reference not set to an instance of an
> object.]
>    Altas_SitiosAmigos.grdListadoDeSitio_RowDeleting(Object sender,
> GridViewDeleteEventArgs e) in c:\Documents and Settings\Daniel\Mis
> documentos\Visual Studio
> 2005\Projects\elpeloenelhuevo\elpeloblog\Altas\SitiosAmigos.aspx.cs:54
>    System.Web.UI.WebControls.GridView.OnRowDeleting(GridViewDeleteEventArgs
> e) +131
>    System.Web.UI.WebControls.GridView.HandleDelete(GridViewRow row, Int32
> rowIndex) +732
>    System.Web.UI.WebControls.GridView.HandleEvent(EventArgs e, Boolean
> causesValidation, String validationGroup) +1067
>    System.Web.UI.WebControls.GridView.RaisePostBackEvent(String
> eventArgument) +214
>
> System.Web.UI.WebControls.GridView.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String
> eventArgument) +31
>    System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler
> sourceControl, String eventArgument) +32
>    System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +244
>
>    System.Web.UI.Page.ProcessRequestMain(Boolean
> includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3840
>
>
> If I use *Guid id= new
> Guid(grdListadoDeSitio.Rows[e.RowIndex].Cells[1].Text);* with *columns *v*
> isible=true* I can read the ID...
>
> Can help my pleas.
>
> Thankyou
>
>

Reply via email to