问题标签 [business-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 投票
1 回答
1082 浏览

c# - 数据访问层中映射数据库的设计模式 [C#]

我在使用数据映射器模式的数据访问层上工作。我的实际代码结构例如:

我有很多类对应于同名的数据库表。

我的问题是:

  1. 我的做法对吗?当我映射所有表时,我将在域层中使用它。

  2. 在 Mapper 类中,我使用的方法仅适用于与这些类同名的表。(Person类-> Persons db 表、Order类-> Orders db 表等)但是从数据库映射高级选择的最佳方法是什么,它将包含与更多表的连接。例如,我想选择Person他的所有Orders.我应该为 Person 创建域模型,它将包含属性List<Orders>和使用PersonMapper以及下一个OrderMapper

0 投票
0 回答
87 浏览

c# - 如何转换要在 WCF 中公开的多个“旧”C# 业务对象层

我知道如何创建[DataContract]以公开我的业务对象层,这是一个一个接一个的过程,并且由于我有数百个对象要处理,所以我的问题很简单:是否有“正确的方法”将已经创建的业务层公开给 WCF?

我需要保持我真正的 3 层完好无损,当然我的业务对象层在没有 WCF 的情况下在其他地方使用,所以我需要尽可能保持原样......

这是我的 BOL 屏幕截图,代表解决方案结构

波尔

谢谢

0 投票
1 回答
90 浏览

class - 这个基于域模型的 uml 类图的关系是否正确,需要的方法应该放在哪个类中?

我目前正在尝试为一个订购软件可视化一个类图,其中一个Employee/User能够创建新订单,其中包含有关该Customer、该Products、当前状态和该Employee特定工作人员的信息Order

我的问题是我不知道应该在哪个类中调用哪些方法。方法createOrder()应该在类Order中创建本身还是在类User中,因为在软件中User创建Order

我尝试在类中放置的方法是:

  • getAllOrders()、getMyOrders()、getAllCustomers()、getAllEmployees()、
  • getOrderByID(orderID), getCustomerByID(customerID), createOrder(),
  • createCustomer(), updateOrder(), updateCustomer(),

我将非常感谢对我的 uml 类图的批评和建议。

我当前的域模型类图的图像。

ER 图和简化状态图的图像,以便更好地理解我的项目(都在一张图片中,因为我只能发布两个链接。

0 投票
1 回答
45 浏览

c# - 将对象存储在内存中以便在业务层中使用它

我正在开发一个具有 3 层架构的 asp.net 应用程序。(DAL、BL、PL)我正在使用实体框架来处理数据。但是我有这个包含大约 80 列和 110000 行的数据文件,我不想保存在数据库中。我将它反序列化为一个列表(字符串数组列表),因为我需要立即使用 2 个索引(行和列)获取一个值我的问题是:将此对象存储在内存中供我使用的最佳方法是什么在业务层?

0 投票
0 回答
74 浏览

database - 文档/动作/命令权限/访问控制、rbac、abac

我正在开发一个用于采购的业务 Web 应用程序。我使用 ASP.NET MVC Core 2.0、EF Core 2.0、MSSQL Server。几个月来,我一直在互联网上寻找我的问题的答案,但找不到答案。假设我有一个文档,我想控制文档上不同操作的权限(读取、编辑、删除、编辑文档编号、编辑它的不同属性等)。所以我开发了一些 IPermissionControl 接口和几个实现这个接口的类,例如 RoleBasedPermissionControl 等。现在我遇到了一个问题。我所有的业务逻辑都在 .Net 应用程序中,而不是在 Db 中。因此,当用户打开所有允许的文档列表时,所有文档都会从数据库中获取并在应用程序中检查权限。这是一个很大的性能问题,所以如果 db 有 1000000 个文档,并且用户只有其中 10 个权限,因此获取所有这些权限是个坏主意。如何通过将所有 BL 留在 c# 应用程序中来解决这个问题?

提前致谢!

0 投票
2 回答
338 浏览

c# - 数据层应该实现什么,业务层应该实现什么?

我仍然对数据层和业务层应该编码的内容感到困惑。因为一些方法可以在两个主题中实现。例如,我想要两个日期之间的 Employs 或类似的东西。所以我应该在 BL 或 AL 中这样做。

或者我应该这样做:

并提前感谢任何帮助或参考以了解树层架构!

0 投票
1 回答
214 浏览

c# - 业务层中的 C# 唯一属性验证

我在业务层中使用 FluentValidation 和 PostSharp。我的数据库有一个Admin表,并且该表中的UserName列是唯一的。我想用“ Aspect ”检查唯一性。我的代码如下。

管理员验证器

IsUnique扩展方法

FluentValidation 方面

和管理员

正如我在注释行中提到的,我需要将 IEnumerable 传递给 FluentValidationAspect。但是,动态参数不能传递给属性。结果,我被卡在这里了。检查唯一性的最佳方法是什么?

预先感谢您的帮助?此致...

0 投票
0 回答
25 浏览

c# - 如何将异常从业务层引导到 UI 层

在我的 UI 层(WinForms/WPF)中,我正在使用来自业务层的以下方法,该方法接受一些输入并创建一个将在 UI 中显示的对象。

当然,BL中的代码可能会抛出一般或特定的异常,然后会返回一个空对象(异常被处理)。我的问题是如何以体面的方式将 BL 中抛出的消息引导到 UI 层?

界面层

// 当上述方法抛出异常时,获取消息并在 UI 中显示。

业务层

0 投票
0 回答
121 浏览

asp.net-core - ASP.NET MVC Core - 业务层中的 ViewModel 并实现数据注释

我正在构建一个应用程序,其中在业务层中添加了模型、视图模型,以及 Web 应用程序中的控制器和视图。现在我想通过位于业务层的视图模型应用数据注释。我的问题是如何使用在不同层创建的视图模型中应用的数据注释,即在我的业务层中。

0 投票
0 回答
31 浏览

architecture - 软件架构:服务层和业务层有自己的模型吗

我对在业务层和服务层之间设计应用程序感到困惑。

我通过互联网研究到目前为止得到了什么?

服务层通常是用于表示的领域特定代码。

业务层通常是服务于业务规则的领域特定代码。

不确定和困惑,因为我没有直接使用过。

  1. 服务层是否允许通过业务层访问数据访问层,例如。实体框架
  2. 服务层和业务层之间是否有自己的模型?据我所知,如果我在实体框架中与实体混合使用,在不同层的业务/服务中建模,代码将是一团糟。