点击GridView
控件中的删除按钮/链接时出现此错误。
LinqDataSource [DataSource]不支持Select属性 删除,插入或更新操作已启用
我真的不明白为什么我收到此错误,因为我已经在我的网站的不同网页上做了同样的事情,但是在这种情况下从中读取数据的表没有任何外键,这一个。这就是我收到错误的原因吗?
如果重要,AutoGenerateDeleteButton
属性设置为True
,我使用linqdatasource
从数据库中检索数据。
任何意见都将受到赞赏:)
答案 0 :(得分:11)
最后我必须选择所有数据(使用DataSource向导中的*选项),然后删除我不希望在GridView中显示的列。这可能效率不高,但它确实有效。
答案 1 :(得分:1)
刚遇到这个问题,并在其他地方找到了解决方案和解释。
当LinqDataSource生成Delete / Update / Insert语句时,Select语句会导致可能无法映射的匿名类型。源表(linq)用于生成数据库操作的元数据。
当需要检索数据源中的所有列时,我们将不得不承受小的性能损失,但在后台完成一些工作。我喜欢。
并且,如果使用GridView,则需要将DataKeyNames属性指定为数据源的主键。
水晶般清澈!? ;)答案 2 :(得分:0)
当然,问题是您必须在数据源配置中包含主键,然后将此主键标记为不可见。