问题标签 [llblgenpro]

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 投票
1 回答
534 浏览

c# - 在 LlblGenPro 中合并实体的标准方法

我从具有主键 A1 的实体 A 开始,它有子集合 B 和 C,但它们是空的,因为我没有预取它们。我现在得到一个新的 A(A prime),主键 A1 填充了子集合 B 和 C。

什么是让 A 和 A 素数成为同一个对象并填充 B 和 C 的 A 集合的好方法?

0 投票
3 回答
1984 浏览

c# - LLBLGen:如何软删除条目

我继承了一个使用 LLBLGen Pro 作为 DB 层的项目。DB 模型要求在删除条目时有一个标志(DeletedDate 设置为当前时间)。最后一位程序员忽略了这个要求,并在整个应用程序中使用了定期删除。

有没有办法将代码生成器设置为自动执行此操作,或者我是否必须为需要它的实体重载每个删除运算符?

0 投票
1 回答
2702 浏览

c# - 使用字符串动态创建 (LLBLGen) Linq 查询

我们需要生成在编码期间(设计时)100% 未知的 LINQ 查询。这是因为逻辑在我们的框架中可用,它与任何数据项目 100% 分离。对于数据,我们使用 LLBLGen 生成的数据访问代码。

通常通过在 DLL 上使用调用,我们指定给框架(而不是引用),我们可以创建代码来检索数据。但是现在我们需要通过 linq 来做这件事。我们如何创建如下查询:

仅来自字符串。我们将有一个名为“customer”的字符串,所以我们知道我们必须从 Customer 中检索。然后我们会有一个包含我们想要检索的字段名的字符串[]。如您所见,这些列可能包含复杂类型(相关字段)。

任何建议,尤其是与 LLBLGen 结合使用时,都会很棒!

谢谢, 加布

0 投票
3 回答
696 浏览

database - LLBL Gen Pro 2.6 和审计

我正在使用 LLBL Gen Pro v2.6 并试图创建一种审计对数据库所做更改的方法。现在,我知道 LLBL Gen 使用 AuditorBase 和依赖注入内置了审计功能。我的问题是;我不仅需要跟踪 LLBL Gen 公开为可审计的内容,还需要跟踪进行更改的用户。据我所见,没有一种内置的方式来收集这些信息。有没有人使用过 LLBL Gen 的内置审计并确定了一种方法来做到这一点?

韦恩·E·普费弗

0 投票
2 回答
6781 浏览

c# - 如何在业务逻辑层设计数据传输对象

DTO

我正在构建一个希望扩展到许多用户的 Web 应用程序。此外,我需要通过 Web 服务向受信任的第三方公开功能。

我正在使用 LLBLGen 生成数据访问层(使用 SQL Server 2008)。目标是构建一个业务逻辑层,使 Web App 免受 DAL 细节的影响,当然,还提供 DAL 之外的额外验证级别。此外,据我现在所知,Web 服务本质上将是 BLL 的薄包装器。

当然,DAL 有自己的一组实体对象,例如 CustomerEntity、ProductEntity 等等。但是,我不希望表示层直接访问这些对象,因为它们包含特定于 DAL 的方法,并且程序集特定于 DAL 等等。因此,这个想法是创建数据传输对象 (DTO)。这个想法是,本质上,这些将是普通的旧 C#/.NET 对象,它们具有所有字段,例如 CustomerEntity,实际上是数据库表 Customer,但没有其他东西,除了一些 IsChanged/IsDirty 属性。因此,会有 CustomerDTO、ProductDTO 等。我假设这些将继承自基本 DTO 类。我相信我可以使用 LLBLGen 的一些模板生成这些,但我还不确定。

因此,这个想法是 BLL 将通过接受和返回这些 DTO 对象来公开其功能。我认为 Web 服务将处理将这些对象转换为 XML 以供使用它的第三方使用,许多可能没有使用 .NET(此外,有些东西可以通过 Web 应用程序上的 AJAX 调用使用 JSON 进行脚本调用)。

我不确定设计这个的最佳方法以及如何前进。这里有一些问题:

1)这应该如何暴露给客户端(表示层和Web服务代码)

我在想会有一个具有这些方法的公共类,每次调用都是原子操作:

InsertDTO、UpdateDTO、DeleteDTO、GetProducts、GetProductByCustomer 等等...

然后客户端只需调用这些方法并传入适当的参数,通常是 DTO。

这是一个好的、可行的方法吗?

2)从这些方法返回什么?显然,Get/Fetch 类型的方法将返回 DTO。但是插入呢?部分签名可能是:

但是,插入时应该返回什么?我想收到错误通知。但是,我对某些表使用自动递增主键(但是,一些表具有自然键,尤其是多对多表)。

我想到的一个选项是 Result 类:

因此,在插入时,DTO 将获取其获取 ID(如 CustomerDTO.CustomerID)属性集,然后放入此结果对象。如果 Result.Error != null 客户端将知道是否有错误,然后它会从 Result.AffectedObject 属性中知道 ID。

这是一个好方法吗?一个问题是,它似乎在来回传递大量冗余数据(当它只是 ID 时)。我不认为添加“int NewID”属性是干净的,因为某些插入不会有这样的自动递增键。另一个问题是我认为 Web 服务不能很好地处理这个问题?我相信他们只会在 Result 类中返回 AffectedObject 的基本 DTO,而不是派生的 DTO。我想我可以通过拥有大量不同类型的 Result 对象(可能从基本 Result 派生并继承 Error 属性)来解决这个问题,但这似乎不太干净。

好吧,我希望这不是太罗嗦,但我想清楚。

0 投票
1 回答
1517 浏览

llblgenpro - 根据关系集合计数过滤 FetchEntityCollection

我目前获取这样的工作集合:

其中bucket包含很多谓词,例如

Job 实体有一个附件集合(通过外键)

如何过滤作业列表以仅选择带有一个或多个附件的作业?我知道我可以通过动态视图使用内存过滤器(AggregateSetPredicate),但这意味着我必须获取所有作业才能获得正确的计数,当前获取的返回计数具有最大值。

0 投票
1 回答
1548 浏览

transactions - LLBLGen Pro 中的事务

我正在使用带有自助服务的 LLBLGen Pro 2.5。如果我想在事务中将一些行添加到我的表中,然后更新我添加的第一行,我是否必须再次将第一个实体添加到事务对象中?

这是我的意思的一个虚构示例:

任何建议将不胜感激!

0 投票
1 回答
1847 浏览

asp.net - 可以在 llblgen 数据源上使用多个过滤器吗?

我有以下(示例)代码来过滤来自 LLBLGen 数据源的搜索结果:

当我触发此代码时,这可以正常工作并过滤结果。但是,如果我添加第二个过滤器,我必须按两次调用代码才能看到结果。下面是带有 2 个过滤器的片段:

在第一次搜索之后,每次搜索都可以解决问题;但是,我需要它来处理第一个。

更新:代码位于 ASP.Net 按钮单击事件中。Page Load 事件块中也没有影响此数据源的代码。

有任何想法吗?

0 投票
1 回答
6912 浏览

c# - 如何使用 LLBLGen 连接带有条件的表?

我有以下 Sql 查询,它返回我想要的结果类型:

本质上,我希望行数等于表 1 (a),同时列出表 2 (b) 中的数据,如果条件“测试”在表 2 中不存在,则为 NULL。

我对 LLBLGen 很陌生,并且尝试了一些东西,但它不起作用。如果条件存在,我可以让它工作;但是,当需求发生变化并导致我将查询重写为上述查询时,我不知所措。

以下是适用于现有产品但不适用于上述查询的旧 LLBLGen C# 代码:

表 1 中有 3 条记录。即使表 2 中的所有项目都为 NULL,我也需要返回 3 条记录,因为条件不存在。有任何想法吗?

0 投票
1 回答
283 浏览

linq - 当翻译成 linq 时,这个 sql 查询(w count 和 group by)会是什么样子?

将以下 sql 查询翻译为 linq 时的外观如何?

我尝试了以下方法:

但它在枚举时引发异常,表明没有名为“Key”的映射的 db 函数。我在这个特定的应用程序上使用 LLBLGen,我怀疑这就是问题的根源。我想在开始挖掘之前验证我的 linq 语法是否正确。有人看出有什么不对吗?