我正在使用Linq填充数据网格 - 标准类型的东西(下面的代码)。出于某种原因,我的ultraDataGrid仍处于某种只读模式。我已经检查了我能想到的所有网格属性。这是绑定到Linq数据源的结果吗?任何人都有使用Linq?
的可更新网格的示例代码db = New DataContext
myData = New dataClass
dataUltraGrid.DataSource = From table _
In db.profiles _
Select table.field1, table.field2...
答案 0 :(得分:2)
你真的没有使用LinqDataSource控件...你绑定到一个列表db.profiles你的数据网格不知道任何关于更新或删除或插入只是绑定到该列表,我可以这样说:< / p>
<asp:GridView ID="GridView1" runat="server" DataSourceID="LinqDataSource1"
AutoGenerateColumns="False" DataKeyNames="FooID">
<Columns>
<asp:BoundField DataField="FooID" HeaderText="FooID" InsertVisible="False"
ReadOnly="True" SortExpression="FooID" />
<asp:BoundField DataField="Name" HeaderText="Name" SortExpression="Name" />
<asp:BoundField DataField="Description" HeaderText="Description"
SortExpression="Description" />
</Columns>
</asp:GridView>
<asp:LinqDataSource ID="LinqDataSource1" runat="server"
ContextTypeName="YourDataContext" EnableDelete="True"
EnableInsert="True" EnableUpdate="True" TableName="Foos">
</asp:LinqDataSource>
答案 1 :(得分:1)
找到解决方案:使用lambda表达式过滤实体并直接绑定到实体。