Asp.net 获取gridview上的selectedrow主键
请注意,在由entitydata源绑定的web应用程序中,我在尝试获取gridview控件的主键时遇到问题。我有一个名为staff的表,该表上约有25列。该表的主键由两列组成,即列[StaffID]和列[SchoolID]。 我使用entitydatasource控件连接到表。我没有选择所有列,只是选择了四列。下面是entitydatasource控件的标记。Asp.net 获取gridview上的selectedrow主键,asp.net,vb.net,gridview,entity-framework-4,Asp.net,Vb.net,Gridview,Entity Framework 4,请注意,在由entitydata源绑定的web应用程序中,我在尝试获取gridview控件的主键时遇到问题。我有一个名为staff的表,该表上约有25列。该表的主键由两列组成,即列[StaffID]和列[SchoolID]。 我使用entitydatasource控件连接到表。我没有选择所有列,只是选择了四列。下面是entitydatasource控件的标记。 ContextTypeName="DEMOWEBAPPLICATION.PriSecDbEntities" Enable
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>
ContextTypeName=“DEMOWEBAPPLICATION.PriSecDbEntities”enableFlatting=“False”
AutoGenerateOrderByClause=“true”
EntitySetName=“Staff”EntityTypeFilter=“Staff”
Select=“it.[StaffID],it.[SchoolID],it.[name],it.[FirstName]”>
我将其绑定到一个gridview控件。我的问题是,当我单击gridview上的一行时,我将能够在不同的文本框控件上显示staff表中的不同列(例如,我将能够执行类似以下操作:txtNames.text=newStaff.name等等)我将能够编辑和更新它,它将在数据库上更新。我一直在尝试在vb.net中创建staff对象并获取主键列
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>
Dim newStaff As Staff=gridview selectedindexchanged事件处理程序中的DirectCast(grdLoadStaffDetails.SelectedPersistedDataKey(“StaffID”),Staff),但它会抛出无效的强制转换执行选项。在过去的五个小时里,我一直在拔头发。非常感谢您的帮助。谢谢将DataKeyNames=“StaffID”与主键列a name绑定
<asp:GridView ID="gvwAllUserInfo" runat="server"
AutoGenerateColumns="False" DataKeyNames="StaffID"
OnRowEditing="GridView_RowEditing" AllowPaging="True"