草庐IT

业务型

全部标签

c# - 存储库、管道、业务逻辑和域模型——我如何将它们组合在一起?

我在设计N层应用程序时遇到了一个难题,您可能有解决方案。表示层是MVC。我的ORM是使用LinqToSQL执行的-它是一个为存储库提供服务的独立项目。每个存储库都有一个接口(interface)和至少1个具体实现。Repositories有以下方法:FindAll(),Save(Tentity),Delete(intid)FindAll()返回某种类型的IQueryable,这意味着它返回我可以应用过滤器的查询。ORM映射是使用数据库优先方法执行的,首先创建表,然后由SQLMetal生成类。我添加了一个与存储库一起使用的管道层。它将进一步的过滤器应用于查询。例如。OrderReposi

c# - 业务对象数据访问层的最佳 "pattern"

我正试图找出最简洁的方法来做到这一点。目前我有一个客户对象:publicclassCustomer{publicintId{get;set;}publicstringname{get;set;}publicListemailCollection{get;set}publicCustomer(intid){this.emailCollection=getEmails(id);}}然后我的电子邮件对象也很基础。publicclassEmail{privateintindex;publicstringemailAddress{get;set;}publicintemailType{get;s

c# - 生成用户友好的字母数字 ID(如业务 ID、SKU)的选项有哪些

要求如下:必须是字母数字,8-10个字符,以便于用户使用。这些将作为唯一键存储在数据库中。我将Guid用作主键,因此最好选择使用GUId生成这些唯一ID。我正在考虑采用Guid并将其转换为8个字符的唯一字符串的base-n转换器。首选简短、轻量级的算法,因为它会被经常调用。 最佳答案 8characters-perfectlyrandom-36^8=2,821,109,907,456combinations10characters-perfectlyrandom-36^10=3,656,158,440,062,976combinat

c# - 业务逻辑类命名

我有一个业务层,其中包含一些业务对象/POCO/实体/等等。我还有一些用于数据访问的存储库。到目前为止,我一直直接从我的UI层访问存储库。我现在实际上需要一些不是直接CRUD的类,所以我将创建一些业务逻辑类来执行逻辑和CRUD,并且存储库不会被访问不再使用UI(可能应该从一开始就完成)。我应该如何称呼这些类?我唯一能想到的是服务类,但我在这个应用程序中有实际的WCF服务,所以这会让人感到困惑。WCF服务也将使用这些类,因此让服务使用服务类似乎很奇怪且令人困惑。 最佳答案 我也使用“服务”命名约定。诚然,“服务”已成为行业中一个非常重

c# - 存储库模式和多个相关的核心实体或业务对象——一个存储库还是多个?

我正在考虑实现存储库模式(因为我想出的是90%的实现),并且遇到了一个设计问题-我有两个或更多核心业务对象(例如,业务和CRM应用中的联系人),BO可以是高度相关的,也可以是完全不相关的。在这种情况下,我应该实现一个存储库(例如CrmRepository,带有.addBusiness()、.addContact()等)还是多个存储库(BusinessRepository、ContactRepository,每个存储库都有自己的.add()、.delete()等).在这种情况下,最佳做法是什么?底层DAL是EF4。问候哞哞 最佳答案

javascript - JavaScript 中的业务逻辑。胖客户端与瘦客户端

用JavaScript在客户端实现业务逻辑是个好主意吗?应该有什么样的逻辑?验证逻辑?与GUI相关?如果要在另一个应用程序(公开的)中使用相同的逻辑,用JavaScript实现它意味着您不能重用该逻辑,您会怎么做。另一方面,将所有逻辑都放在服务器端意味着对服务器的请求更多。你怎么看? 最佳答案 永远不要相信客户。因此,您在客户端使用JavaScript进行的任何验证都只能提高用户的便利性和可用性。稍后您始终必须验证服务器上的传入数据,以确保没有人注入(inject)数据等。 关于java

php - 如果业务逻辑要发送电子邮件

我正在尝试实现UncleBob的CleanArchitecture:除了UseCases/Interactors之外,一切正常。我需要注册一个用户,所以我需要RegisterUserUseCase。在具体的interactor中,我实现了RegisterUser用例,它只是创建User实体并使用PasswordBroker端口散列其密码.创建用户后,我需要发送一封验证邮件。为此,我需要使用框架的组件。并且存在两个主要问题。我认为为邮件服务编写端口没有意义,因为这个端口只是框架服务的巨大复制/粘贴抽象Interactor不能在用户创建后发送邮件,因为User最终会在Doctrineflu

php - 在 3 层架构中实现业务逻辑

我有一个正在开发的Web应用程序,到目前为止我已经完成了数据访问层。每个表都有自己的类,该类创建该表行的对象,因此每个对象代表表的一行。每个对象所具有的功能基本上都是CRUD操作。我的问题是,实现应用程序业务逻辑的最佳方式是什么?我在PHP中执行此操作,因此我可以只包含一个包含许多函数的文件,但我希望更好地组织它。数据访问层已经采用面向对象的方法,所以我想继续这样做。 最佳答案 不要将php用于业务逻辑。如果您在带有SQLServer数据库的WinTel服务器上运行,我会在.Net框架上使用C#或其他语言。如果您使用的是Linux/

php - CakePHP 业务逻辑层

CakePHP似乎从来没有提到将应用程序的业务逻辑层和数据访问层分开。这是我的第一个MVC应用程序,我的“胖模型”变得非常胖,因为它们包含各种业务逻辑,其唯一真实的共同点是需要访问同一个数据库。当您听到将业务逻辑从Controller转移到模型中的建议时,以这种状态结束真的可以接受吗?CakePHP是否为单独的业务逻辑层提供任何结构作为其框架的一部分?谢谢,布莱恩 最佳答案 没有。在我看来,您遇到的是ActiveRecord模式的典型缺点。此外,CakePHP完全基于结果关联数组而不是对象实例也无济于事。我建议你看看像Doctrin

php - MVC 模式中的业务逻辑在哪里?

我使用Zend框架和Doctrine。在许多项目中,业务逻辑内置于Controller。这种方法对我来说似乎是错误的。我见过的最好的设置是使用服务层,这是编写业务逻辑的地方。我所要做的就是创建一个表单,验证它,并在服务层使用一些业务逻辑。结果验证、业务逻辑和使用一种方法(例如:newProduct($postData))。在MVC中组织业务逻辑的正确方法是什么?也许我需要阅读一些书籍,或者查看一些源代码示例。 最佳答案 我不能代表Zend框架(或您正在使用它构建的任何东西),但在MVC模式中,业务逻辑通常属于模型。您之前可能听过这样