标签: sqldatasource

如果在Page_Load()内调用DataBind(),则SqlDataSource不执行更新

如果我将GridView(通过DataSourceID属性)绑定到SqlDataSource并设置SelectCommand和UpdateCommand属性,那么一切都很完美.

但我注意到,如果我,无论出于何种原因,还在Page_Load()中手动调用DataBind(),那么SqlDataSource不执行任何更新,即使当GridView的Update按钮是SqlDataSource.Updating和SqlDataSource.Updated事件时也会触发点击.

有人可以解释为什么不发生更新?

asp.net data-binding gridview sqldatasource

1
推荐指数
1
解决办法
4997
查看次数

PHP相当于ASP.NET SqlDataSource

昨晚我在Visual Studio中为我的学校项目做了一个GridView和SqlDataSource.Usualy我使用PHP进行Web开发,但这种组合非常强大,所以我想知道是否存在一个PHP类实现与ASP.NET中的SqlDataSource + GridView相同的想法?

php asp.net gridview sqldatasource

1
推荐指数
1
解决办法
469
查看次数

asp SqlDataSource Filter Expression; 多个搜索框

我正在尝试对单个数据列执行单个搜索asp:GridView,但是我希望每个列上方有多个过滤器(搜索)框,以便可以在自己的透视列中进行搜索.理论上明确解决这个问题的方法就是拥有多个FilterExpressions.我正在使用VB而且非常新,很容易被VB误解,请使用:

PS.当只有一个过滤器(搜索)框时,我已经让它工作没问题,这当前没有做任何事情

<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
    ConnectionString="xxx" 
    ProviderName="xxxx" 
    SelectCommand="SELECT [ddiID], [volusionID], [Customer], [email], [Total], [SumOfTotal] FROM [BBnewsalesQry] ORDER BY [Customer]"
    FilterExpression="customer like '%{0}%' OR ddiID like '%{0}%'">
      <FilterParameters>
         <asp:ControlParameter Name="ddiID" ControlID="ddiIDSearch" PropertyName="Text" />
         <asp:ControlParameter Name="customer" ControlID="txtSearch" PropertyName="Text" />
      </FilterParameters>
</asp:SqlDataSource>
<div>
   <b>DDI Search:</b> <asp:TextBox ID="ddiIDSearch" runat="server" />
   <b>Customer Search:</b> <asp:TextBox ID="txtSearch" runat="server" />
   <asp:ImageButton ID="btnSearch" ImageUrl="http:xxx" runat="server" />
   <asp:ImageButton ID="btnClear" ImageUrl="http:xxx" runat="server" />
</div>
Run Code Online (Sandbox Code Playgroud)

然后在GridView内部:

<asp:TemplateField HeaderText="ddiID" SortExpression="ddiID">
        <ItemStyle HorizontalAlign="Left" />
           <ItemTemplate>
              <asp:Label ID="lblddiid" Text='<%#HighlightText(Eval("ddiid")) %>' 
                        CssClass="TextField" …
Run Code Online (Sandbox Code Playgroud)

asp.net gridview sqldatasource

1
推荐指数
1
解决办法
1万
查看次数

将ASP.NET(Telerik)多列组合框移植到MVC.

我需要将这个且只有一个AJAX控件的功能移植到MVC,但鉴于MVC控件的选择很差,我认为我需要将这个传统控件带入MVC世界......

我宁愿不用ASP.NET控件来修改我的MVC项目,也欢迎你知道的json/MVC替代品.(如果你知道的话,发布它们)

我在ASP.NET MVC中需要的示例UI 组合样本

回到移植

虽然是不幸的,我留下来移植这种控制,MVC,这似乎是一个被广泛接受的做法,因为Telerik的有详细的说明如何做到这一点.

这让我问:

MVC网站使用ASP.NET控件有多常见?

我再次提到我不想这样做,所以我欢迎MVC特定的替代方案.话虽这么说,我将继续尝试将该控件与我现有的网站合并.</End Disclaimer>

如果你单击这个超链接,并查看底部的源代码,你能告诉我应该在MVC中放置以下内容吗?

  1. 代码背后(我的第一直觉是使用Controller,但另一个SO问题表明我应该创建一个创建一个ViewName.aspx.cs文件)

  2. 如何将SQLDataSource移植到新的"模型"思维方式.我知道它们本质上是不同的,但我不知道如何以消耗信息的方式向ASP.NET控件提供数据.

  3. 我如何处理AJAX组件?此控件具有使用回调的AJAX组件.是的,这很难看,但似乎我必须这样做.

  4. 显然,此模型将数据保存在会话或视图状态中.我不知道这是否适用于MVC.非常感谢指导,备用控制或救生圈.

我已经完成了研究,并在这里 Telerik的指示中描述了如何开始放置一个简单的菜单,但是我需要一些辅助来处理像这样的更复杂的控件.

注意:对于遇到此问题的所有评论,请记住我只想要这一个 ASP.NET控件功能; 我在MVC中找不到类似的控件.

asp.net-mvc telerik sqldatasource asp.net-mvc-3 asp.net-mvc-2

1
推荐指数
1
解决办法
2942
查看次数

SqlDataSource向Gridview添加新列?

<div style="width:100%; height:200px; overflow:scroll; border-color:White;">
        <asp:GridView ID="UsersGridView" runat="server" 
            CssClass="label" ShowHeaderWhenEmpty="True" Width="100%" 
            AllowSorting="True" HeaderStyle-BackColor="LightGray" CellPadding="4" 
            ForeColor="#333333" GridLines="None" DataSourceID="UsersDataSource" >
            <AlternatingRowStyle BackColor="White" ForeColor="#284775" />
            <Columns>
                <asp:BoundField HeaderText="Fleet Description" ReadOnly="True" 
                    HeaderStyle-Wrap="false" HtmlEncode="True" >
                    <HeaderStyle Wrap="False"></HeaderStyle>
                </asp:BoundField>
                <asp:BoundField DataField="Fleet Code" HeaderText="Fleet Code" ReadOnly="True" 
                    HeaderStyle-Wrap="false" >
                    <HeaderStyle Wrap="False"></HeaderStyle>
                </asp:BoundField>
                <asp:BoundField DataField="First Name" HeaderText="First Name" ReadOnly="True" 
                    HeaderStyle-Wrap="false" >
                    <HeaderStyle Wrap="False"></HeaderStyle>
                </asp:BoundField>
                <asp:BoundField DataField="Last Name" HeaderText="Last Name" ReadOnly="True" 
                    HeaderStyle-Wrap="false" >
                    <HeaderStyle Wrap="False"></HeaderStyle>
                </asp:BoundField>
                <asp:BoundField DataField="Username" HeaderText="User Name" ReadOnly="True" 
                    HeaderStyle-Wrap="false" >
                    <HeaderStyle Wrap="False"></HeaderStyle>
                </asp:BoundField>
                <asp:BoundField DataField="Email" HeaderText="Email" ReadOnly="True" …
Run Code Online (Sandbox Code Playgroud)

asp.net datagridview sqldatasource

1
推荐指数
1
解决办法
576
查看次数

按钮单击在SqlDataSource中运行存储过程

我正在构建一个C#ASP.NET页面,我想在数据库中调用存储过程.

我已经设置了一个SqlDataSource指向存储过程的东西.参数直接从Web控件获取(TextBox)

我有一个按钮,当用户点击它时它应该运行存储过程,所以我打算添加如下代码:

mySqlDataSource.run()
Run Code Online (Sandbox Code Playgroud)

要么

mySqlDataSource.exec()
Run Code Online (Sandbox Code Playgroud)

要么

mySqlDataSource.storedProcedure()
Run Code Online (Sandbox Code Playgroud)

但当然这些方法都不存在.

如何初始化存储过程?如何获取存储过程返回的值?

谢谢!

c# sql-server asp.net stored-procedures sqldatasource

1
推荐指数
1
解决办法
2万
查看次数

如何以特定方式对sqldatasource记录进行排序

我有我的SqlDataSource控件.它基本上有UpdateCommand和SelectCommand.我的gridview绑定到这个sqldatasource控件.我的SelectCommand是:

Select Username, Status from Users Order by LastLoginTime desc
Run Code Online (Sandbox Code Playgroud)

我的桌子是这样的:

ABC IN PROGESS  somedate
DEF COMPLETE    somedate
PQR PENDING     somedate
JLM COMPLETE    somedate
LKM IN PROGESS  somedate
Run Code Online (Sandbox Code Playgroud)

当前查询结果按lastlogintime排序(即somedate).但我希望我的结果按第二列排序(比如这个列名是Status).我希望对记录进行排序,以便首先显示所有用户的整体状态为IN PROGRESS,然后显示PENDING然后完成.正如你所说,这不是一个简单的order by子句.

如何使用我的SqlDataSource控件以这种方式排序?

c# sql asp.net gridview sqldatasource

0
推荐指数
1
解决办法
2131
查看次数

SQLDatasource参数问题

为什么我在后面的代码中使用以下指令:

SqlDataSource1.SelectParameters["page"].DefaultValue = "0";
Run Code Online (Sandbox Code Playgroud)

我得到'System.NullReferenceException:对象引用未设置为对象的实例.

"?

c# asp.net sqldatasource

-1
推荐指数
1
解决办法
1286
查看次数

如何向SqlDataSource.UpdateCommand添加异常处理

我们有一个自动更新的radgrid SqlDataSource.UpdateCommand.因此,当我们编辑某些列并单击"更新"时,表格会UpdateCommand在标记中正确更新.

它看起来像这样:

<telerik:RadGrid ID="RadGrid" DataSourceID="SqlDataSource1" runat="server" AllowAutomaticUpdates="true" >
<MasterTableView AutoGenerateColumns="False" DataKeyNames="City" CommandItemDisplay="Top"  AllowAutomaticUpdates="true">
        <Columns>
            <telerik:GridEditCommandColumn ButtonType="ImageButton" UniqueName="EditCommandColumn">
            </telerik:GridEditCommandColumn>
            <telerik:GridBoundColumn DataField="City" HeaderText="City" ReadOnly="True" SortExpression="City"
                UniqueName="City" >
            </telerik:GridBoundColumn>
            <telerik:GridBoundColumn DataField="Prefix" HeaderText="Prefix" UniqueName="Prefix">
            </telerik:GridBoundColumn>
            <telerik:GridBoundColumn DataField="sector" HeaderText="sector" UniqueName="sector">
            </telerik:GridBoundColumn>
        </Columns>
        </MasterTableView>
</telerik:RadGrid>
<asp:SqlDataSource ID="SqlDataSource1" ConnectionString="<%$ ConnectionStrings:RF-PRConnectionString %>"
SelectCommand="SELECT STATEMENT" runat="server"
UpdateCommand= "UPDATE STATEMENT">
<UpdateParameters>
    <asp:Parameter Name="Name" Type="String" />
    <asp:Parameter Name="sector" Type="String" />
</UpdateParameters>
</asp:SqlDataSource>
Run Code Online (Sandbox Code Playgroud)

但是,假设更新在表中生成异常(即尝试使用varchar更新Int,违反某些键等).有什么方法可以添加Try...CatchSqlDataSource.UpdateCommand?我不知道怎么做,因为更新后面没有代码,一切都通过完成SqlDataSource.

.net c# asp.net sqldatasource

-1
推荐指数
1
解决办法
1038
查看次数