问题标签 [objectdatasource]
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.
c# - 为什么 ObjectDataSource 的匹配算法不如……灵活?
即使UpdateNames存储过程只接受一个名为@First的参数,我们仍然可以定义名为Last的附加参数,并且更新仍然会成功:
但是在处理 ObjectDataSource 控件时,ObjectDataSource 中定义的参数个数必须与UpdateNames()方法中定义的参数个数完全匹配。因此,如果UpdateNames()只接受一个名为First的参数,以下将导致异常
A) 为什么 ObjectDataSource 的匹配算法不如 SqlDataSource 的匹配算法灵活,从而忽略任何额外的参数?
谢谢
c# - 我假设 SqlParameter.IsNullable 仅在……时才有意义?
1) 当SqlParameter.IsNullable
设置为 时true
,接收到的null
值被转换DBNull.Value
并发送到数据库。因此,我假设设置IsNullable
为仅在 GridView也设置为true
时才有意义?Parameter.ConvertEmptyStringToNull
true
2) GridView 和 ObjectDataSource 的参数都有一个ConvertEmptyStringToNull
属性。但是是否有过这种情况(尝试更新数据源时):
• 我们应该将GridView 设置Parameter.ConvertEmptyStringToNull
为true
,然后将ObjectDataSource 设置Parameter.ConvertEmptyStringToNull
为false
?!
• 或者我们应该将 GridView 设置Parameter.ConvertEmptyStringToNull
为true
,而将 SqlDataSource设置SqlParameter.IsNullable
为false
?
asp.net - ObjectDataSource 插入方法
我有一个绑定到 DetailsView 控件的 ObjectDataSource。我在业务层(调用数据层)中编写了插入方法,一切正常......直到我想在插入方法触发之前做其他事情。在进入我的业务层之前,我需要访问文件上传控件。因此,我在 DetailsView 上连接了一个 ItemCommand 事件 - 它接收该事件,我可以使用 FileUpload 控件执行我需要的操作。在那种情况下,我调用业务层中的插入方法 - 与 ObjectDataSource 控件中指定的方法相同。但是 Insert 方法会触发两次!在考虑了一分钟后,我意识到这是预期的行为——它在从 ItemCommand 事件调用时触发一次,第二次从 ObjectDataSource InsertMethod 触发。
我想我可以简单地从 ObjectDataSource 中删除 InsertMethod 属性来消除该方法的双重触发,但是当我这样做时,我得到了这个错误:
ObjectDataSource 'objStudentDetails' 不支持插入,除非指定了 InsertMethod。
那么有什么方法可以告诉 ObjectDataSource 不要触发该方法吗?请参阅下面的代码简化代码:
asp.net - Telerik Reporting 是否支持业务对象数据源?
我需要使用业务对象在三层模型中调用强类型表适配器。我还需要使用 Telerik 报告,我没有看到任何在线示例。我只看到了创建一个简单的选择到 Northwind 并将报表直接连接到它的简单示例。我正在使用 Telerik 2008 年第三季度的报告,我的设计师甚至与我看过的视频看起来都不一样。我有两个业务对象:boReportHeader 和 boReportLines,它们每个都有 4 个方法,这些方法将从 Ui 传递参数并且需要填充报告标题和详细信息部分。我花了一些时间尝试使用来自设计师和代码隐藏的 Telerik 报告中的这些,但我没有成功。我假设这会像 RadGrid 一样简单,但似乎并非如此。任何人都有使用带有参数的多个业务对象数据源作为 Telerik Reporting 数据源的经验?该项目的主要要求是生成一个 PDF 文件,该文件将作为 BLOB 文件存储在数据库中。如果 Telerik Reporting 无法做到这一点,那么除了 Telerik Reporting 之外,是否还有其他工具可以提供建议?
asp.net - 如何使用带有 TemplateFields 的 ObjectDataSource 在 GridView 上进行排序
背景:
我正在使用 GridView 和 ObjectDataSource。我正在实现分页和排序。
在 ObjectDataSource 上:
在 GridView 上:
为了使分页和排序正常工作,我将“EnableSortingAndPagingCallbacks”设置为 True。之前,我收到“System.Web.HttpException:GridView 触发的事件排序未处理”。这解决了它。
如果我在我的 GridView 中只使用 BoundFields,这很好并且工作正常。
但是,如果我使用 TemplateFields,我会收到“NotSupportedException:TemplateField 不支持回调,因为某些控件无法在回调中正确更新。在 GridView 上关闭回调。”
这是有道理的。我只需要知道如何进行排序,而不使用 EnableSortingAndPagingCallbacks。
如果 EnableSortingAndPagingCallbacks = True:
- 寻呼工程
- 分拣作品
- BoundFields 工作
- 模板字段不起作用
如果 EnableSortingAndPagingCallbacks = False:
- 寻呼工程
- 排序不起作用_
- BoundFields 工作
- 模板字段工作
我的问题:
如何让分页、排序和模板字段同时工作?
关于实施的说明:
使用带有 GridView 的 ObjectDataSource 需要实现一个名为 Select 的方法,该方法提供排序表达式、要返回的行数和起始行:
具体的 SortExpression 在 aspx/ascx 中定义:
这应该在单击列时传入并调用 ObjectDataSource 上的 Select 方法,但如果 EnableSortingAndPagingCallbacks = true 似乎不起作用,而是我得到关于未定义排序事件的异常。
asp.net - 如何使用 GridView 和 ObjectDataSource 进行排序?
我有一个 GridViewObjectDataSource
并且我希望能够对其进行排序。
分页工作正常,但是排序给了我一个例外:
GridView
gridView
触发了未处理的事件排序。
如何在服务器端启用排序?
(即gridView.EnableSortingAndPagingCallbacks
必须保持为假)
asp.net - ASP.Net 用户控制
我正在尝试构建一个 ASP.net 用户控件,该控件使用Repeater 来遍历我需要传递给用户控件的ObjectDataSource 中的多个项目。我不确定如何传递对象数据源。有人知道怎么做吗?
asp.net - ASP.NET DataSource & GridView 数据绑定,以编程方式设置参数值
所以,我有一个带有 ObjectDataSource 的 GridView,我想以编程方式设置 ObjectDataSource 的 SelectParameters 之一。
我试过(在 Page_Load 和 DropdownList__SelectedIndexChanged 期间)
但它没有用。你有什么建议?
sql - sql字符串参数中应该转义哪些字符
我需要一个完整的字符列表,应该在 sql 字符串参数中转义以防止异常。我假设在将所有有问题的字符传递给我的 ObjectDataSource 过滤器参数之前,我需要用转义版本替换所有有问题的字符。
objectdatasource - 过滤器表达式不起作用?为什么?
ObjectDataSource1.FilterExpression = "userid LIKE '{0}' AND action LIKE '{1}'"; ObjectDataSource1.FilterParameters.Add("userid", ddlUsers.SelectedValue); ObjectDataSource1.FilterParameters.Add("action", ddlAction.SelectedValue);
我喜欢这段代码。
当我运行它时,网格视图是空的。但是,当我编写和运行它时效果很好。
如果没有参数(操作),它会显示所选 ddlUsers.SelectedValue 的所有登录。
为什么不能这样工作?