草庐IT

业务问答

全部标签

c# - 业务逻辑层和数据访问层 : circular dependency

我遇到了一点架构问题。在我的项目中,我有一个业务逻辑层(BLL),其中包含我所有的业务规则、模型和接口(interface)的OOAPI。每个对象都有像getById这样的静态方法,它返回所述对象的一个​​实例。每个对象还具有保存和删除等方法。这是非常简单的OO代码。现在我有一个数据访问层(DAL),包含在一个单独的命名空间中,对于每个BLL对象,我都有一个数据类或“存储库”,它执行getById和保存命令。所以在某种程度上,BLLsave和getById方法是DataClass方法周围的薄层。publicstaticNewsItemGetByID(intid){returnDataF

c# - 业务逻辑或 DAL 返回类型的 IEnumerable 与 IQueryable

我知道以前有人问过这些问题,我将首先列出其中的一些(到目前为止我已经阅读过的):IEnumerablevsIQueryableList,IList,IEnumerable,IQueryable,ICollection,whichismostflexiblereturntype?ReturningIEnumerablevs.IQueryableIEnumerableasreturntypehttps://stackoverflow.com/questions/2712253/ienumerable-and-iqueryableViewswithbusinesslogicvscodeWPF

十种使用人工智能改进业务流程的方法

当人工智能正在迅速深入人们的生活时,许多人甚至没有意识到它可能会产生影响的接触点。在日常生活中,当人们要求Alexa或Siri执行简单的任务时,或者对自动弹出的广告做出回应时,就会接触到人工智能。但这不仅仅是公众想象力的问题。人工智能也引起了各种规模的企业的注意,并正在彻底改变企业开展业务的方式。考虑到人工智能有助于更准确地做出快速决策,这并不奇怪。当商业世界逐渐意识到它的潜力时,它已经有了多种商业应用。但人工智能究竟在影响商业世界吗?技术如何帮助实现业务增长?本文将讨论人工智能在商业领域的十大应用:(1)改善会议不可否认,会议是任何企业的核心和灵魂。发生的新冠疫情充分表明,即使人们不能现场沟

c# - 业务应用程序 : Will F# make my life easy?

我主要开发业务线应用程序。没有科学操作。没有复杂的计算。只需将用户界面绑定(bind)到数据库。我使用线程的唯一原因是在后台做一些工作并仍然保持UI响应。这可能不是最好的方法,但这是我遵循的方法1.首先创建一个工作应用程序(无线程)并将其提供给最终用户以进行反馈。2.一旦所有需求都被锁定,我会尝试在任何对提高性能有意义的地方使用线程。步骤1和2的代码截然不同,线程代码主导了实际代码。1.对于业务线应用程序,F#会让我的生活更轻松吗?2.是否有任何特定的UI技术最适合F#?我主要从事ASP.NET和Silverlight方面的工作。时不时地使用WPF。3.是否有使用F#的业务线应用程序/

c# - 业务对象、验证和异常

我一直在阅读一些关于异常及其使用的问题和答案。似乎强烈认为应该只针对异常、未处理的情况提出异常。所以这让我想知道验证是如何与业务对象一起工作的。假设我有一个业务对象,其中包含对象属性的getter/setter。假设我需要验证该值在10到20之间。这是一个业务规则,所以它属于我的业务对象。所以这对我来说似乎意味着验证代码在我的setter中。现在我将我的UI数据绑定(bind)到数据对象的属性。用户输入5,所以规则需要失败,不允许用户移出文本框。.UI数据绑定(bind)到属性,因此将调用setter、检查规则并失败。如果我从我的业务对象中提出一个异常来说明规则失败,UI会选择它。但这

c# - MVVM:ViewModel 和业务逻辑连接

在使用MVVM模式完成了几个项目之后,我仍在为ViewModel的角色而苦苦挣扎:我过去做过的事情:仅将模型用作数据容器。放置逻辑来操作ViewModel中的数据。(这就是业务逻辑吗?)缺点:逻辑不可重用。我现在正在尝试的是:保持ViewModel尽可能薄。将所有逻辑移至模型层。仅在ViewModel中保留表示逻辑。缺点:如果在模型层内更改数据,UI通知会非常痛苦。所以我会给你一个例子,让它更清楚:场景:重命名文件的工具。类(class):File:代表每一个File;规则:包含如何重命名文件的逻辑;如果我遵循方法1:为文件、规则和View创建ViewModel->RenamerVie

c# - 使用 Entity 框架时对业务逻辑放在哪里的困惑

我刚刚开始使用EntityFramework,我对业务层中的类通常如何适应EntityFramework创建的实体感到困惑。当使用经典的ADO.NET时,我会有一个名为Customer的类,然后是另一个名为DALCustomer的类来处理数据库交互,在这个结构中,我会放置代码来进行计算、过滤和删除一个实例DALwithCustomer用于在Customer类中保存、更新和删除。使用EntityFramework,如果您有一个名为Customer的表,EntityFramework会创建一个名为Customer的实体,这就是我的困惑开始的地方,这个实体是否消除了业务层中对Customer

程序员业务,微信全文搜索技术优化

一、iOS微信全文搜索技术的现状全文搜索是使用倒排索引进行搜索的一种搜索方式。倒排索引也称为反向索引,是指对输入的内容中的每个Token建立一个索引,索引中保存了这个Token在内容中的具体位置。全文搜索技术主要应用在对大量文本内容进行搜索的场景。微信终端涉及到大量文本搜索的业务场景主要包括联系人、聊天记录、收藏的搜索。这些搜索功能从2014年上线至今,已经多年没有更新底层搜索技术,聊天记录使用的全文搜索引擎还是SQLiteFTS3,而现在已经有SQLiteFTS5,收藏首页的搜索还是使用简单的Like语句去匹配文本,联系人搜索甚至用的是内存搜索(在内存中遍历所有联系人的所有属性进行匹配)。随

知识图谱医学问答项目启动

1.修改配置文件根据neo4j安装时的端口、账户、密码配置设置项目配置文件:answer_search.pybuild_medicalgraph.py2.数据导入:pythonbuild_medicalgraph.py导入报错1)py2neo未安装pipuninstallpy2neo2)ValueError:Thefollowingsettingsarenotsupported:{‘http_port’:7474}出现该报错的根本原因是:通过pip安装的Py2neo默认为最新版本,该版本(或更早版本)相比此前流行的主流版本(如4.3.0),变更了用于连接Neo4j数据库的Connectionp

关键业务服务保证技术QoS理论和实践

什么是QoSQoS(QualityofService,服务质量)是指管理数据流量以减少网络上的数据包丢失、延迟和抖动的服务保证技术。QoS通过为网络上特定类型的数据设置差异的优先级来控制和管理网络资源。如果没有QoS,网络数据可能变得杂乱无章,在网络带宽阻塞情况下,数据的完整性和安全性有可能受到损坏,甚至会出现网络完全中断情况。QoS技术本身不会给网络增加带宽,而是在网络中有限的带宽资源下,如何平衡地在网络中为各种业务分配带宽,针对各种业务流量的业务价值需求,为其提供服务质量保证。换句话说,网络在一定时间内只能传输这么多信息。因此,QoS工具以某种方式对数据包进行优先级排序,以确保在固定时间内