问题标签 [business-logic-layer]

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 投票
4 回答
1145 浏览

.net - 3 层 .NET 应用程序资源

我的一个朋友在 3-Tier 应用程序设计和开发方面没有太多经验,他想扩展他在这个主题上的知识。你能给我指出好的在线资源或书籍吗?如果他们从原则开始,那就太好了。我认为本教程是一个很好的起点。

你最喜欢什么资源?

干杯。

0 投票
7 回答
4487 浏览

delphi - 在 Delphi 中分离数据访问、业务逻辑和 GUI 的任何建议

我想将数据层与业务逻辑和业务逻辑与 GUI 分开。潜入网络我偶然发现了一些资源,但仍然无法让我的想法清晰。有些人谈论模式,有些人则指向各种框架。我的要求是:

  • 从 rdbms(主要是 mysql)CRUD 操作中操作数据
  • 处理 id 生成(我应该使用自动增量或提供的数据引擎还是生成的 pascal 代码)
  • 表关系可能是逻辑的(不使用参照完整性)或不是
  • 需要从数据模型生成对象关系的能力
  • 必须将数据转换为业务对象并操作业务逻辑
  • 应使用现有的 gui 组件或免费软件

我需要的是:

  • 一些指导技术/建议,带有基本的示例代码/应用程序布局(例如单位-类-模块-目录)...不是 OOP 方面的专家,当我必须设计类层次结构时我会感到困惑
  • 一个带有教程的简单框架
  • 甚至你自己的日常代码/框架/方法
0 投票
1 回答
464 浏览

business-objects - 多语言数据库设计业务类

我在这里发布了一个关于多语言数据库设计的问题,
[]多语言数据库设计的最佳实践是什么?
我喜欢 Martin 的建议,但现在我有一个问题,创建业务对象的最佳方式是什么?如果我将创建包含 ProductTranslation 对象的产品,那么 UI 中的绑定和工作将会很复杂,如果只有本地化的对象,我将不得不为 CMS 创建不同的对象
非常感谢!

0 投票
3 回答
127 浏览

sql - 尝试返回给定 id 和相同 id + 偏移量之间的行,大多数逻辑应该去哪里确定如何检索数据?:BLL 或 DAL

在我的数据库中,我有一个名为ThingsInACircle. 每次将 aThing添加到 时ThingsInACircle,都会添加一个ThingId自动递增的 a。

把这张表中的 想象Things成一个圆圈。
SELECT Thing FROM ThingsInACircle WHERE ThingId = 10旁边是
SELECT Thing FROM ThingsInACircle WHERE ThingId = 11
还有……
SELECT Thing FROM ThingsInACircle WHERE ThingId = min(ThingId)旁边
SELECT Thing FROM ThingsInACircle WHERE ThingId = max(ThingId)

我想说:对于给定的 ThingId 和偏移量,返回 ThingsInACircle 中从 ThingId 到 (ThingId + offset) 的所有记录(偏移量可能为负数)。

因此,以此为例进行设置:

以下是我们的 ThingId 列表:1 2 3 4 5 6 7 8 9

如果我想要 @ThingId = 2 和 @offset = 3 的所有 ThingId,则没有问题

它会返回:2 3 4 5

但是,如果我想要 @ThingId = 8 和 @offset = 3 的所有 ThingId,那么就有问题了

该函数应返回:7 8 9 1

所以这是我的困境,我的数据访问层是否应该包含一个使用更复杂的存储过程的查询 (选择最小值、最大值并使用 if & else 来确定它们是否已被超过)来确定要检索哪些记录以进行处理记录被链接成一个圆圈?

或者业务逻辑层是否应该确定用户是否请求了超过 min 或 max 的 id + 偏移量,然后使用简单的 DAL 方法来完成它需要返回的内容?

这可能只是一个见仁见智的问题。前两天刚开始学习三层结构,是跟着微软教程学的,所以我想了解一下有些人认为DAL和BLL应该如何形成:如果DAL应该简单,BLL应该做所有的验证......或者反过来......或者我一起错过的东西。

0 投票
5 回答
450 浏览

c# - Windows 窗体控件和 LINQ;我应该返回什么?

使用 Windows 窗体控件和 LINQ 时,您的业务层如何返回数据是否有“最佳选择”?

现在我正在返回 DataTables,以便我可以将 DataSource 设置为返回的 DataTable。有更好的选择吗?为什么?


我发现了这个类似的问题——>用 Linq To SQL 和 DTO 分离关注点

0 投票
3 回答
656 浏览

design-patterns - 将业务规则与业务流程分开

如何从业务流程中外部化业务规则,以便在不触及业务流程逻辑的情况下添加规则?

例如,我有两个业务流程,比如“添加产品”和“更新产品”,这两个流程共享一些通用规则,并且以后可以不断添加规则。我打算编写一次业务流程,它执行特定流程可用的所有规则,如果没有抛出异常,则继续成功完成业务流程。

我不打算使用规则引擎,因为我认为这对我的架构来说可能太重了。

谢谢和问候,
阿杰

0 投票
7 回答
13755 浏览

web-services - UI、业务逻辑层、数据层以及放置 Web 服务的位置

我们正在开发一个网络应用程序。我们希望可能将我们在这里所做的工作重用于将使用相同数据库的不同应用程序,并使用相同的业务规则来读取和写入所述数据库。

哪种设计更正确

  1. 让 UI 调用 Web 服务,该服务将使用包含业务逻辑的业务对象,该业务对象将与数据访问层对话。

  2. 让 UI 使用包含业务逻辑的业务对象,这将调用 Web 服务,然后与数据访问层对话。

  3. 让 UI 用户业务对象包含业务逻辑,这将与数据访问层对话。

0 投票
3 回答
934 浏览

c# - 我们可以使用扩展方法来构建业务规则引擎吗?

我想做这样的事情

然后在客户端代码中将其用作

或者

只是想在我深入潜水并淹死之前问一下。

这种方法有什么潜在的陷阱???

提前致谢

0 投票
1 回答
427 浏览

asp.net - 业务层中的多个类库,还是一个?

我的 ASP.NET 应用程序仅使用 1 个 SQL Server 2000 数据库,并且其中不超过 50 个表。我复制了一个数据库实例以在我的开发 PC 上运行,所以我需要在开发和发布之间切换连接。

问题是,我在业务层创建了多个类库,每个类库都有一个 LINQ to SQL 类。现在我发现很难让不同项目中的所有 DBML 文件都使用相同的连接字符串。

那我的设计错了吗?我应该只使用 1 个类库吗?如果我继续使用多个类库,如何确保发布模式下所有库使用相同的连接字符串?

0 投票
6 回答
2336 浏览

asp.net - 业务逻辑层

我正在使用带有 Telerik 控件 (v2009 q2) 的 asp.net 对数据驱动的应用程序进行编程。我有一个名为 BLL 的类,它包含(几乎只有)静态类,它们返回不同的对象,以一些 id 作为参数。通常将对象组作为列表返回。

我的问题是,这是否有任何架构缺陷,总是使用静态。我知道人们将他们的业务层和数据访问层作为不同的项目。它作为一个项目有什么好处?所以我可以添加更多功能,或者只是这样更整洁。

提前致谢