- 博客(14)
- 资源 (2)
- 收藏
- 关注
翻译 NULL值处理细节
NULL值处理细节2020年8月24日4分钟阅读本主题描述使用’null’值的细节,以及在编写条件时应如何对待它们。考虑以下示例。该员工持久化类暴露了两个属性-名字和经理。名称是指定员工姓名的字符串属性。如果当前对象不代表经理,则经理是引用Employee对象的引用属性。如果当前雇员是经理,则该属性包含空引用。C#VB.NETpublic class Employee : XPObject { public string Name { get { return
2021-02-01 09:21:58
235
翻译 直接SQL查询
直接SQL查询2020年11月12日6分钟阅读在XPO中,您可以对数据库执行直接SQL查询,并以标量值,结果集或对象集合的形式获取查询结果。#执行SQL语句要执行不产生结果集的SQL语句,请调用Session.ExecuteNonQuery方法,如下所示。C#VB.NETunitOfWork.ExecuteNonQuery("UPDATE [Northwind].[dbo].[Order Details]" + "SET [Discount] = 0.15 WHERE [Un
2021-02-01 09:21:24
289
翻译 存储过程
存储过程2020年8月24日3分钟阅读XPO中对存储过程的支持包括以下功能。#直接调用现有存储过程您可以使用以下方法来调用存储过程:Session.ExecuteSprocSession.GetObjectsFromSprocSession.GetObjectsFromSproc 。为了简化实现,数据模型向导可以选择为视图,触发器和存储过程生成所有必需的持久性类和DDL(数据描述语言)代码。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8yIxsV
2021-02-01 09:20:51
183
翻译 自由链接
自由链接2020年10月29日2分钟阅读使用XPO,您可以使用自由连接基于不直接相关(没有显式定义的关联)的持久对象建立条件。本质上,XPO允许您连接条件上的任何持久对象,使用它们的属性针对匹配对象计算聚合函数,并返回聚合值作为连接的结果。为此,请在您的条件中使用JoinOperand。用于创建JoinOperand的选项包括:该CriteriaOperator.Parse方法。方法的条件字符串参数的一般格式为:[< JoinTypeName >] [ JoinConditi
2021-02-01 09:20:15
423
翻译 排序
排序2020年8月24日5分钟阅读XPO允许您执行以下操作:在检索数据之前对数据存储中的数据项进行排序,对已经检索到的持久对象进行排序。#在服务器端对数据排序#使用XPQuery 排序数据您可以通过XPQuery 对象检索数据项,并使用LINQ To XPO对基础数据源运行LINQ查询。以下示例显示如何获取排序的数据:C#VB.NETusing System.Linq;using DevExpress.Xpo;...XPQuery<Customer>
2021-02-01 09:19:38
171
翻译 LINQ转XPO
LINQ转XPO2020年8月24日4分钟阅读XPO包含XPQuery 类,该类旨在构建LINQ表达式并针对基础数据存储区执行它们。**XPQuery **可以将多个查询链接在一起,并支持延迟执行。要运行查询并加载数据,请调用ToList()或ToArray()扩展方法,或使用foreach运算符枚举XPQuery 。您可以通过以下方式创建XPQuery 实例:通过会话的XPQueryExtensions.Query 扩展方法,从会话的范围创建实例。传递一个会话或工作单元至一个XP
2021-01-27 17:05:20
218
翻译 查询和整形数据
查询和整形数据2020年8月24日通过查询数据存储,您可以检索特定数据并将其存储在临时数据存储中,以供进一步查看和评估。在XPO中,您可以获得以下查询结果:对象的集合(XPCollection,XPCollection ,XPCursor,Session.GetObjectsFromQuery,Session.GetObjectsFromSproc,Session.GetObjectsByKeyFromSproc,Session.GetObjectsByKey,Session.GetObject
2021-01-27 17:04:45
98
翻译 缓存的数据存储
缓存的数据存储2020年11月11日6分钟阅读XPO为数据存储级别的缓存提供功能。高速缓存存储查询及其在数据存储中执行时的结果。每当以前执行过的查询通过缓存时,该查询的结果将立即返回,而无需往返于数据存储。通常,这可以显着提高性能,并确保在分布式应用程序中通过有线传输尽可能少的数据。为了使数据存储缓存,四个班级指定根及其节点- DataCacheRoot,MSSql2005SqlDependencyCacheRoot,DataCacheNode和DataCacheNodeLocal -必须结合起
2021-01-27 17:04:05
235
原创 连接到数据存储
连接到数据存储2020年9月30日9分钟阅读#先决条件要将XPO与数据库服务器一起使用,请将所需的数据库提供程序程序集添加到项目的引用中。有关详细信息,请参见XPO支持的数据库系统文档。#指定连接设置调用GetDataLayer(String,AutoCreateOption)方法,并将连接字符串或现有连接对象作为参数传递给此方法。此方法创建一个数据访问层(DAL)对象。使用新创建的DAL创建UnitOfWork或Session对象:C#VB.NETusing System;u
2021-01-27 17:02:06
277
原创 验证对象
验证对象2020年9月10日2分钟阅读eXpress持久对象没有内置的验证逻辑。您可以重写IXPObject.OnSaving或IXPObject.OnDeleting方法以实现验证逻辑。例如,这在执行“防御性编程”时执行各种检查很有用。不建议将保存对象的过程与业务逻辑混合在一起。下面的示例演示如何防止将Name属性设置为空字符串。如果将此属性设置为空字符串,则XPO会引发RequiredPropertyValueMissing异常。C#VB.NETpublic class Requi
2021-01-27 16:33:49
172
原创 使用事务2
使用事务22020年8月24日4分钟阅读事务是一组顺序的操作操作,就像是一个工作单元一样执行。换句话说,除非组中的每个单独操作成功,否则交易将永远不会完成。如果事务中的任何操作失败,则整个事务将失败。事务具有以下四个标准属性(ACID属性)。原子性:确保工作单元内的所有操作均成功完成;否则,以前的操作将回滚到以前的状态。一致性:要求保留事务绑定的数据的语义。隔离:单个事务的结果必须对任何其他未完成的事务透明,直到该事务成功提交为止。耐用性:确保在系统故障的情况下持久化已提交事务的结果或
2021-01-27 16:32:59
128
原创 使用事务
事务是逻辑单元,它允许原子地,一致地执行数据操作。在XPO中,可以使用适当的Session方法手动管理常规事务(在XPO级别)和显式事务(在数据库级别)。XPO还提供工作单元,将事务封装到可以完全提交或回滚的功能块中。使用显式事务2020年8月24日3分钟阅读一个明确的事务表示明确开始了内部的数据库事务会话或的UnitOfWork分离并最终确定在数据库级事务变化。显式事务使您可以轻松管理对象更改,并且在常规事务无法用于批处理对象更新的情况下也很方便。XPO本质启动短明确的交易,只承诺在所做的更
2021-01-27 16:28:52
166
原创 删除永久对象
删除永久对象2020年8月13日4分钟阅读该eXpress的持久性对象库支持延迟和即时对象删除。#删除永久对象要删除持久对象,请调用XPBaseObject.Delete方法:C#VB.NETpublic void DeleteByKey(int employeeKey){ using(var uow = new UnitOfWork()){ // Get an object var employee = uow.GetObjectByKey&
2021-01-27 16:27:41
218
原创 保存持久对象
保存持久对象2020年8月24日2分钟阅读要保存持久对象,请使用以下任何API:对象的XPBaseObject.Save方法-保存当前对象。会话的Session.Save方法-保存单个或多个持久对象。UnitOfWork.CommitChanges方法-使用“工作单位”时,保存对持久对象所做的所有更改。C#VB.NETusing(UnitOfWork uow = new UnitOfWork()) { Person p1 = new Person(uow
2021-01-27 15:21:27
140
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人