问题标签 [sqldatasource]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2709 浏览

asp.net - SqlDataSource 动态设置 SelectCommand

我正在使用 SqlDataSource 并避免直接在我的代码中编写长查询,我想我可以创建一个 Query 类,将我想要的查询作为字符串返回。我尝试了下面的代码,但我只是得到“服务器标签不能包含 <% ... %> 构造。”

在我使用存储过程之前,但我的虚拟主机不允许这样做,所以这就是我考虑查询类解决方案的时候。我还需要补充一点,我不想在代码隐藏中进行数据绑定。

有没有办法做到这一点?

0 投票
1 回答
3667 浏览

sql - 如何在 SqlDataSource FilterExpression 中进行强制转换?

我正在使用单个文本框来搜索报告并过滤掉记录。我的一个字段是 int32,其余的是 varchar。因此,当过滤器尝试将文本框中的字符串与 int32 字段进行比较时,出现错误。这是 SQLDataSouce 和搜索框:

请不要抨击 sql 语句,我知道它的效率极低。有谁知道如何更改,FilterExpression以便在尝试将文本框值与 UserID 字段进行比较时不会出错?我试过这样做:

但这没有用。我认为这样做UserID LIKE CAST('%{0}%' as varchar(4))是行不通的,因为如果它实际上是他们输入的字符串,那么你会得到一个错误。

编辑:这是我收到的错误消息“无法对 System.Int32 和 System.String 执行 'Like' 操作。” 那是在我做演员之前。然后在我进行演员表之后,我得到“表达式包含未定义的函数调用 Cast()”。

有人有想法么?

谢谢,
马特

0 投票
1 回答
5053 浏览

asp.net - 如果在 Page_Load() 中调用 DataBind(),则 SqlDataSource 不会执行更新

如果我将 GridView(通过 DataSourceID 属性)绑定到 SqlDataSource 并设置 SelectCommand 和 UpdateCommand 属性,那么一切正常。

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

有人可以解释为什么没有更新吗?

0 投票
4 回答
10831 浏览

.net - SqlDataSource 与 ObjectDataSource

如果网页需要一些数据,为什么不让 SQLDataSource 调用存储过程呢?为什么要使用 ObjectDataSource 调用业务对象,然后再调用存储过程?我知道基于 .net 框架构建的其他应用程序(比如说桌面应用程序)可以访问业务对象,但如果应用程序始终只是一个 Web 应用程序怎么办?

为了更清楚:

什么时候应该使用SqlDataSourceor ObjectDataSource

如何激发选择?

0 投票
2 回答
235 浏览

.net - 如果直立的 UserControl 不可见,则不要填写 DropDownList

我的页面 Add.aspx 包含许多UserControls:AddRequest.ascx、AddOperation.ascx、AddObject.ascx 等。取决于Request["type"]一个控件变得可见。

每个都UserControl包含许多DropDownList正在通过SqlDataSourceDB 填充的 s。例如,类型、状态、货币等。

似乎适当SqlDataSource的 s 查询数据库,即使它的UserControl-owner 不可见。所以有了n控制,只有1查询是真正需要的,n-1而不是。

我怎样才能改变这种行为?

0 投票
1 回答
2279 浏览

c# - 使用 sqlDataSource 从表和 ASPNET 成员资格提供程序中删除用户

我有一个通过 sqlDataSource 显示联系人列表的 Gridview。

包括一个用于删除记录的项目模板 - 一个 LinkBut​​ton - OnClientClick 设置为使用一些 JavaScript:“return confirm('Are you sure you want to delete this user?');” 这会给用户一个是或取消选项的弹出窗口。

当从 Contact 表中删除用户时,我还需要使用 Membership.DeleteUser(UserName, true) 语句删除 AspNet Membership 表中的同一用户。

Membership 表的Contact.IntranetUserName列和UserName包含相同的数据值,这样方便。

不知道要使用什么事件,我开始使用 Gridview 的 OnRowCommand - 但无法弄清楚如何获取正在删除的行的“IntranetUserName”列的值(通过联系人表中的项目模板)并传递它到 Membership.DeleteUser 语句。

任何关于此的C#想法都会受到赞赏。也许我应该改用 GridView 的 OnRowDeleted 或 OnRowDeleting?或者也许是 LinkBut​​tons OnCommand?

GridView 和 SqlDataSource 在这里:

0 投票
1 回答
695 浏览

asp.net - 使用数据源配置向导 vs 手动配置数据源

回到 VB 4 / VB 5 时代,使用数据绑定控件和数据连接向导会给应用程序增加大量开销。

我想知道在 ASP.Net 3.5 中使用“配置数据源”向导是否会给网页增加很多不必要的开销?

谢谢

0 投票
2 回答
472 浏览

asp.net - sql数据源问题

我有一个查询,当我在 sqlDataSource 控件(向导测试按钮)中对其进行测试时,它可以工作,但在我运行页面时它不起作用。我确保 gridview 具有正确的 sqlDataSource 控件作为其源。这真让我抓狂。

这有发生在其他人身上吗?

编辑:

它与where子句中的这一行有关(它是一个oracle数据库)

该页面单独使用每个搜索子句,但当它们都存在时不使用(它在 sqlDataSource 向导测试中使用两个参数,但在页面运行时不使用)

==================================================== ====================================

编辑:

感谢您提供看起来更干净的查询建议。

我确实将默认的 CancelSelectOnNullParameter 属性设置为“true”。当我将其更改为 false 时,页面将不会显示。我收到这条消息

“服务器应用程序不可用您尝试在此 Web 服务器上访问的 Web 应用程序当前不可用。请点击 Web 浏览器中的“刷新”按钮以重试您的请求。管理员注意:详细说明此特定请求失败原因的错误消息可以在 Web 服务器的应用程序事件日志中找到。请查看此日志条目以找出导致此错误发生的原因。“

=================================

这是除了我运行页面时有效的查询

0 投票
4 回答
2968 浏览

.net - 如何编辑我的连接字符串以使用 System.Data.SqlClient?

我是一个新手程序员,我遇到了 sqldatasource 的问题。在我的项目中,我有一个名为“KFS”的数据库。我有一个gridview 和sqldatasource 作为gridview 的数据源。我有一个这样的连接字符串:

这在 VS2008 中有效,但是当我在我的网站上加载它时,它不起作用。我应该如何更改我的连接字符串?

0 投票
1 回答
1578 浏览

asp.net - .aspx 页面中的 SqlDataSource 连接字符串

我有一个将 ASP.NET 页面部署到 SharePoint 的解决方案,该解决方案在一些页面上使用 SqlDataSources。由于在 SharePoint 部署中,与我们的应用程序(部署到 GAC)关联的 web.config 文件是 SharePoint 服务器的 web.config,因此我们没有对所有环境的完全访问权限来更改 web.config 文件和添加连接字符串。然后我尝试使用连接字符串变量创建一个全局密封类,并希望在 aspx 页面上设置连接字符串。我知道这可以在后面的代码中完成,但想知道是否有办法在 aspx 页面的标记中设置它?

前任。

尝试执行上述操作时出现以下错误:初始化字符串的格式不符合从索引 0 开始的规范。

要在后面的代码中执行此操作,我需要为每个 SqlDataSource 声明一个受保护的属性,然后为每个 SqlDataSource 设置连接字符串属性。

感谢您的任何反馈。