- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经为我们全新的 Intranet 项目创建了一个基础架构,并尝试遵循几乎所有的最佳实践。我还想提一下,这是我第一次从零开始创建架构。
目前我的基础设施的第一个版本已经准备好并且运行良好。但我想在下一个版本中实现有界上下文结构。
我试图在下面解释当前的情况。
数据库核心:负责数据操作。 Entity Framework 5 代码首次使用。只有一个 DbContext 类和其中定义的所有 DbSet。 GenericRepository 模式和 Unit of Work 模式也是基于以下接口(interface)实现的。
IGenericRepository
public interface IGenericRepository<TEntity>
where TEntity : class {
void Delete(object id);
void Delete(TEntity entityToDelete);
System.Collections.Generic.IEnumerable<TEntity> Get(System.Linq.Expressions.Expression<Func<TEntity, bool>> filter = null, Func<System.Linq.IQueryable<TEntity>, System.Linq.IOrderedQueryable<TEntity>> orderBy = null, string includeProperties = "");
System.Collections.Generic.IEnumerable<TEntity> GetAll();
TEntity GetByID(object id);
System.Collections.Generic.IEnumerable<TEntity> GetWithRawSql(string query, params object[] parameters);
void Insert(TEntity entity);
void Update(TEntity entityToUpdate);
}
public interface IUnitOfWork {
void Dispose();
IGenericRepository<Test> TestRepository {
get;
}
IGenericRepository<Log> LogRepository {
get;
}
void Save();
}
public interface IService<TEntity> {
IEnumerable<TEntity> Get();
TEntity GetByID(int id);
void Insert(TEntity entity);
}
public interface IConsumeRepository<TEntity> {
Task<TEntity> Create(TEntity TestInfo);
Task Delete(int id);
Task<IEnumerable<TEntity>> Get();
Task<TEntity> Get(int id);
TEntity New();
Task<TEntity> Update(TEntity TestInfo, int entityId);
}
最佳答案
问题一 :假设您有一个复杂的业务领域和重要的业务逻辑,那么值得付出努力,因为您必须将您的领域层与基础设施问题隔离开来。然而,情况往往并非如此。如果您主要只是将数据从数据库移动到 UI 并再次返回,那么这就是过度工程,您应该寻求移动部件更少的东西。
问题二:你有多少不同的领域模型(使用不同的普遍存在的语言)?一?二?三?对于每个模型,尽可能将其与其他模型和基础设施问题隔离开来。
Eric Evans 将有界上下文定义为主要是语言边界(引自他的书中):
A BOUNDED CONTEXT delimits the applicability of a particular model so that team members have a clear and shared understanding of what has to be consistent and how it relates to other CONTEXTS. Within that CONTEXT, work to keep the model logically unified, but do not worry about applicability outside those bounds. In other CONTEXTS, other models apply, with differences in terminology, in concepts and rules, and in dialects of the UBIQUITOUS LANGUAGE.
关于domain-driven-design - 将有界上下文实现到基于 Entity Framework 的基础设施,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14891640/
我有一个 asp .net 应用程序,它使用 infragistics Ultrachart 作为雷达图。现在图表如下图 是否可以在弧度和级别旁边添加文本,如下所示?有什么例子吗? 最佳答案 是的。有
如果我想创建一个相对较小的网站的移动友好版本,最好有一个子域重定向到一个带有单独标记和样式的全新 url,还是在代码中检测用户代理会更好并以编程方式更改为不同的移动友好样式表,或者他们是我忽略的更好的
我创建了一个可以正常打开的侧选项卡(基本上将 UltraGrid 变成了选项卡,而不是带有 UltraGrid 的表单),但是当固定侧选项卡时,它的大小会位于主窗体的后面。 如何设置固定标签布局以根据
我正在寻找 WPF 网格控件的供应商,它可以与 MVVM 很好地配合使用;这允许通过拖动列进行分组。我一直在环顾四周,乍一看,我目前的选择似乎是 Telerik。 如果有人对一个或多个供应商有经验,我
我在一家小型初创公司工作,该公司仅托管在 Azure 中,我想知道保护一切的最佳方法。 我使用以下服务 网络应用(面向公众) 虚拟机 - 运行应用和服务 Sql 服务器 服务总线 存储帐户。 网络应用
我有一个 C++ 应用程序,目前使用简单的 TCP/IP 客户端/服务器模型在其自身的 2 个实例之间进行通信。这在本地网络上运行良好,但我希望它能在外部网络上使用。目前,可能由于防火墙问题,它无法跨
我在 aws 中有一个实验室设置,有一个 vpc、一个 IGW、几个不同的子网和一些 ec2 实例,没什么可疯狂的。 我正在尝试将这个 VPC 与里面的所有东西一起导出,但不知道如何去做。 我尝试了
我过去经常使用 Dojo,并且非常喜欢它提供的小部件基础结构。您可以轻松地分离代码和 html 内容,它与 dojo 使用的 require-system 很好地链接在一起,最后但并非最不重要的一点是
我认为我的问题很简单,但我仍然没有找到适合我的答案,无论是在这里还是在那里..所以如果有人能帮助我,我会很高兴,不管是提供有用的链接还是其他什么... 我想要达到的目标:我有一个 Ignite UI
Map Reduce 是一种最近似乎受到很大关注的模式,我开始在我的一个专注于事件处理管道(iPhone 加速度计和 GPS 数据)的项目中看到它的体现。我需要为这个项目构建大量的基础设施,事实上它超
如何最好地设置我的 PHP (LAMP) 开发环境,以便我拥有开发、暂存和生产服务器。一键式部署到其中任何一个,以及一键式回滚到任何修订。回滚还应该将数据库模式和数据回滚到源代码是最新时的状态。 现在
我一直在用Infragistics几年来,UltraWebGrids 出现在多个产品中,但与它们一起走到了十字路口。我一直在调查Telerik产品,它们似乎比演示中的 Infragistics 网格表
有人能告诉我如何使这个 viewModel 中的 getMovies 函数可测试吗?我无法让单元测试正确地等待协程.. (1) 我很确定我必须创建一个 test-CoroutineScope 和一个正
在iggrid上进行Excel风格的过滤过程中,我想在显示网格后隐藏一些自定义过滤条件。 我已经看到了:http://infragistics.com/community/forums/t/97384
我们正在为客户制作一个大型 Web 表单,它有六个日期字段,为此我们使用了 Infragistics WebDatePicker 控件(在 asp.net 4.6 中)。它们工作正常(尽管向它们应用验
目前我们在单个云服务器上设置了所有内容,包括: 数据库服务器 Apache celery redis 作为 celery 和其他一些任务的代理 等等 现在我们正在考虑将主要组件分解为单独的服务器,例如
将领域层的所有接口(interface)(模块、模型、实体、领域服务等)全部归入基础设施层是否有意义?如果没有,创建一个“共享”项目/组件将所有这些组合到一个共享库中是否有意义?毕竟,“基础设施层”的
我知道这个问题已经被无数人问过。但是,我没有找到任何适合我的解决方案。 我有一个 .NET 网站项目,并且正在使用 Entity Framework 6。在本地,该项目没有任何问题,一切都运行得很好。
我已将 UltraGrid 放在 WinForms 用户控件上。我调整了一些设置,以便可以将网格用作只读多行选择表。但有一个问题:默认情况下,第一行似乎被选中。 但是 Selected.Rows 属性
我是 IOS 开发的新手。我想知道每个人都使用哪种语言/框架来为高流量、可扩展的 IOS 应用程序后端创建 RESTFUL Web 服务。 解决方案需要:1. 安全登录2. Restful 网络服务(
我是一名优秀的程序员,十分优秀!