在gridview上获取选定的行主键

时间:2013-08-29 07:41:28

标签: asp.net vb.net gridview entity-framework-4

我在尝试获取由实体数据源限制的Web应用程序中的gridview控件的主键时遇到问题。我有一个名为staff的表,此表上有大约25列。该表的主键由两列组成,列为[StaffID]和列[SchoolID]。 我使用entitydatasource控件连接到表。我没有选择我刚刚选择了四列的所有列.Below是entitydatasource控件的标记。     

        ContextTypeName="DEMOWEBAPPLICATION.PriSecDbEntities" EnableFlattening="False" 
        AutoGenerateOrderByClause="true" 
        EntitySetName="Staffs" EntityTypeFilter="Staff" 
        Select="it.[StaffID], it.[SchoolID], it.[Surname], it.[FirstName]">
        <OrderByParameters>
        <asp:Parameter 
        DefaultValue="StaffID" />

        </OrderByParameters>
    </asp:EntityDataSource>

我将此限制为gridview控件。我的问题是我想要一种情况,当我点击gridview上的一行时,我将能够在不同的文本框控件上显示我员工表中的不同列(例如我将是能够做这样的事情txtSurname.text = newStaff.name等)我将能够编辑和更新它,它将在数据库上更新。我一直在尝试创建一个人员对象,并通过在vb.net中执行此操作来获取主键列       Dim newStaff作为Staff = DirectCast(grdLoadStaffDetails.SelectedPersistedDataKey(“StaffID”),Staff)在gridview selectedindexchanged事件处理程序中,但它会抛出无效的强制转换执行小时。在过去的五个小时里,我一直在拔头发。任何帮助都非常感谢。感谢

0 个答案:

没有答案