问题标签 [kephas]
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.
reflection - 对于我对可扩展元数据的要求,Kephas.Model 包似乎有点重。有没有更轻的替代品?
我的要求是为我们使用的实体使用某种元数据系统,但可扩展,这意味着除了查询属性和方法之外,我们还需要支持某种自定义元数据。标准的 Type/TypeInfo 类在某种程度上是有用的,但它们不能被定制来添加特定的属性来支持我们拥有的各种模式:树节点、主从细节等。
Kephas.Model 提供了一个复杂的基础设施来支持这种情况,包括混合和维度等高级特性,但这对我们的系统来说有点太多了。对于我们拥有的代码优先实体,我们需要更轻量级的东西。
有没有关于我们可以使用什么来满足这种要求的建议?我注意到 Kephas.Reflection 命名空间,这似乎是一个合适的候选者,但我不确定如何正确使用它。
dependency-injection - Kephas 中的 AmbientServices 和 CompositionContext 有什么区别?
据我所知,他们做的事情几乎相同,以 IoC/DI 的形式提供服务。但是,IAmbientServices
有一个类型的成员ICompositionContext
。我真的不明白它们两者之间的区别,为什么它们以这种方式聚合?
orm - Kephas.Data 是某种 ORM 吗?
通过 Kephas 框架深入挖掘,我注意到Kephas.Data提供了类似于经典 ORM 的功能。但是,我没有找到任何关于如何连接到数据库的文档,或者至少没有找到澄清我的假设是否正确的文档。
dependency-injection - Kephas 中如何解决与构造函数和/或属性注入相关的 DI?
我注意到大多数 DI 框架都使用构造函数方法,但有些框架还支持通过属性设置依赖关系。Kephas 如何看待这个问题以及为此提供了哪些内置方法?免责声明:我考虑支持 Autofac,但这取决于我的业余时间。我看到在 Kephas 的这个方向上开始了一些事情,但这似乎是在一开始。
async-await - 在 Kephas 中调用异步函数时,PreserveThreadContext() 是什么?
我注意到在所有 Kephas 示例中,当调用异步方法时,最后会调用PreserveThreadContext()
. 这是做什么的?
一些例子:
我知道ConfigureAwait(false)
,这是类似的东西吗?
dependency-injection - 无法在带有 Kephas 的开放式通用服务中使用构造函数
不知何故,我无法通过使用构造函数的实现将服务导出为开放泛型来使其工作。我试图将 [CompositionConstructor] 属性添加到它无济于事。它抛出类似的东西:
有任何想法吗?
asp.net-core - Kephas 如何与 ASP.NET Core 集成?
我能理解这么多,Kephas 不提供自己的 DI 容器,但它在现有的容器上构建适配器(Kephas 有自己的依赖注入容器。为什么要使用另一个框架,为什么不使用现有的?)。现有的适配器适用于 System.Composition (MEF2),并且据我最近了解到,适用于 Autofac(从 6.5.0 版开始,不能在使用 Kephas 的开放式通用服务中使用构造函数)。
但是,ASP.NET 带有自己的 DI 容器实现。在这方面,现在是否可以将 Kephas 与 ASP.NET Core 一起使用,如果可以,如何?
servicestack - 我必须将 ServiceStack 与 Kephas 集成在一起。如何让它们与依赖注入一起玩?
ServiceStack 使用 Funq 方言(不支持元数据),而 Kephas 使用 MEF/Autofac 之一(需要元数据支持)。我的问题有两个部分:
如果可能的话,如何让 ServiceStack 和 Kephas 使用一个 DI 容器?
根据上面的答案:如何使
IClientCache
Kephas 组件可以使用 ServiceStack 服务(如 ),知道这些服务可能不会用 注释[AppServiceContract]
?