Devexpress ASPxGridView和LinqServerModeDataSource,按存储过程插入行
我有一个使用ASPxGridView的页面,为了填充GridView,我使用了一个LinqServerModeDataSource控件,该控件通过一个SQL视图从MS-SQL服务器获取数据。到目前为止还不错,但问题来了Devexpress ASPxGridView和LinqServerModeDataSource,按存储过程插入行,devexpress,aspxgridview,Devexpress,Aspxgridview,我有一个使用ASPxGridView的页面,为了填充GridView,我使用了一个LinqServerModeDataSource控件,该控件通过一个SQL视图从MS-SQL服务器获取数据。到目前为止还不错,但问题来了 我想在数据库中插入数据,因此我正在构建一个自定义表单 <Templates> <EditForm> Company Name: <dx:ASPxTextBox ID="CompanyName" runat="server" /
我想在数据库中插入数据,因此我正在构建一个自定义表单
<Templates>
<EditForm>
Company Name: <dx:ASPxTextBox ID="CompanyName" runat="server" />
Company Mail: <dx:ASPxTextBox ID="Email" runat="server" />
<dx:ASPxGridViewTemplateReplacement ID="UpdateButton" ReplacementType="EditFormUpdateButton" runat="server" />
<dx:ASPxGridViewTemplateReplacement ID="CancelButton" ReplacementType="EditFormCancelButton" runat="server" />
</EditForm>
</Templates>
因此,我们非常感谢您的任何建议或帮助
谢谢 “我想在数据库中插入数据,因此我正在构建一个自定义表单”ASPxGridView可以为您完成所有这些,而无需至少使用sqldb创建自定义模板
如果我在下面为sqldatasource定义一个delete命令和/或edit命令,我就可以在gridview中删除和编辑信息
<dx:ASPxGridView ID="ASPxGridView1" runat="server" AutoGenerateColumns="False"
ClientIDMode="AutoID" DataSourceID="SqlDataSource1">
<Columns>
<dx:GridViewCommandColumn VisibleIndex="0">
<EditButton Visible="True">
</EditButton>
<NewButton Visible="True">
</NewButton>
<DeleteButton Visible="True">
</DeleteButton>
</dx:GridViewCommandColumn>
<dx:GridViewDataTextColumn FieldName="Naam" VisibleIndex="0">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn FieldName="Adres" VisibleIndex="1">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn FieldName="Postcode" VisibleIndex="2">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn FieldName="Plaats" VisibleIndex="3">
</dx:GridViewDataTextColumn>
</Columns>
</dx:ASPxGridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
SelectCommand="SELECT [Name], [Address], [Postcode], [City] FROM [Somewhere]">
</asp:SqlDataSource>
上次我就是这样做的。我使用了数据表,并将其存储在会话中,bla-bla-realy只是尝试一下,但效果不错
<dx:ASPxGridView ID="ASPxGridView1" runat="server" AutoGenerateColumns="False"
ClientIDMode="AutoID" DataSourceID="SqlDataSource1">
<Columns>
<dx:GridViewCommandColumn VisibleIndex="0">
<EditButton Visible="True">
</EditButton>
<NewButton Visible="True">
</NewButton>
<DeleteButton Visible="True">
</DeleteButton>
</dx:GridViewCommandColumn>
<dx:GridViewDataTextColumn FieldName="Naam" VisibleIndex="0">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn FieldName="Adres" VisibleIndex="1">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn FieldName="Postcode" VisibleIndex="2">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn FieldName="Plaats" VisibleIndex="3">
</dx:GridViewDataTextColumn>
</Columns>
</dx:ASPxGridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
SelectCommand="SELECT [Name], [Address], [Postcode], [City] FROM [Somewhere]">
</asp:SqlDataSource>
protected void ASPxGridView4_RowDeleting(object sender, DevExpress.Web.Data.ASPxDataDeletingEventArgs e)
{
DataColumn[] esl = new DataColumn[] { dt.Columns["SQLWaarde"] };
if (ds.Tables[0].PrimaryKey == null || ds.Tables[0].PrimaryKey == esl)
{
ds.Tables[0].PrimaryKey = new DataColumn[] { dt.Columns["SQLWaarde"] };
}
DataRow[] delRow = ds2.Tables[0].Select("IndWaardeType = '" + e.Values[1] + "' AND SQLWaarde = '" + e.Values[2] + "'");
ds2.Tables[0].Rows.Remove(delRow[0] as DataRow);
e.Cancel = true;
ASPxGridView4.CancelEdit();
Session["ds2"] = ds2;
}
protected void ASPxGridView4_RowInserting(object sender, DevExpress.Web.Data.ASPxDataInsertingEventArgs e)
{
ndr2 = ds2.Tables[0].NewRow();
ndr2[0] = e.NewValues[0];
ndr2[1] = e.NewValues[1];
ndr2[2] = e.NewValues[2];
ds2.Tables[0].Rows.Add(ndr2);
e.Cancel = true;
ASPxGridView4.CancelEdit();
Session["ds2"] = ds2;
}