我对 linqdatasource 有疑问。我的页面中有gridview,我将它的数据源设置为linqdatasource,我还设置了AllowPaging="True",AllowSorting="True"。
<asp:GridView ID="cityGrid" runat="server" AutoGenerateColumns="False"
DataKeyNames="CityId" AllowPaging="True"
AllowSorting="True" DataSourceID="LinqCityData">
现在在linqdatasource中我想从两个表(带FK的关系表)中检索数据,这一步没有问题。我可以像这样使用 linqdatasource 的 Select 属性从其他表中进行选择
<asp:LinqDataSource ID="LinqCityData" runat="server"
ContextTypeName="ContactSysDataContext"
TableName="Office_ContactSys_Cities"
Select="new (CityId, CityName , Office_ContactSys_Province.ProvinceName)">
</asp:LinqDataSource>
或者我在 linqdatasource 中使用选择事件
protected void LinqCityData_Selecting(object sender, LinqDataSourceSelectEventArgs e)
{
ContactSysDataContext db = new ContactSysDataContext();
var CityResult= from p in db.Office_ContactSys_Cities join o in db.Office_ContactSys_Provinces on p.ProvinceId equals o.ProvinceId select new { o.ProvinceName, p.CityId, p.CityName };
e.Result = CityResult;
}
但是在这一步之后我不能在 linqdatasource 中使用自动删除,而是收到这个错误:
当启用删除、插入或更新操作时,LinqDataSource 'LinqCityData' 不支持 Select 属性
这是我的问题:如何使用 linqdatasource(启用删除或更新的 linqdatasource)在 gridview(当然对于关系表)中实现分页?