问题标签 [fluent]

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 回答
119 浏览

windows - 流畅的界面和基于任务的应用程序

我们有许多应用程序现在看起来很累而且有点单调。看看 MS 风格的流利界面看起来不错,但似乎(对我来说)更多的是基于文档而不是基于任务。

是否有适合基于任务的应用程序的漂亮“现代”用户界面样式?

0 投票
1 回答
292 浏览

nhibernate - Fluent nHibernate and mapping IDictionary> how to?

I have problem with making mapping of classes with propert of type Dictionary and value in it of type Dictionary too, like this:

My mapping looks like this:

This doesn't work. The important thing I want have everything in one table not in two. WHet I had maked class from this second IDictionary I heve bigger problem. But first I can try like it is now.

0 投票
1 回答
902 浏览

castle-windsor - 代理被创建,拦截器在__interceptors数组中,但是拦截器从来没有被调用过

这是我第一次使用具有流畅注册的拦截器,但我遗漏了一些东西。通过以下注册,我可以解析一个 IProcessingStep,它是一个代理类,拦截器在 __interceptors 数组中,但由于某种原因,没有调用拦截器。有什么我想念的想法吗?

谢谢,德鲁

0 投票
1 回答
462 浏览

c# - 流畅的nhibernate,c#和MySQL的大问题需要在BLOB中搜索

我犯了一个大错误,现在我必须找到解决方案。这是我第一个使用 fluent nhibernate 的项目,我以这种方式映射了一个对象:

所以整个 Poste 对象都在数据库中,但我只需要 PosteId。现在我必须找到一个 Poste 的所有候选人,所以当我查看我的存储库时,我有:

但这非常慢,因为它加载了所有项目,我们现在在表中有 1500 多个项目,起初项目不应该那么大(也不是很大的薪水)。现在我正在尝试使用标准 ou Linq 来执行此操作,但由于我的 Poste 位于 BLOB 中,因此它不起作用。

无论如何我可以很容易地改变这个吗?

非常感谢您的帮助!

0 投票
2 回答
141 浏览

nhibernate - Fluent NHibernate 的映射表和简单视图

我已经映射了一个简单的实体,比如说一张使用 Fluent NHibernate 的发票,一切正常……过了一段时间,我发现我经常需要处理“已发送的发票”(通过已发送的发票,我们指的是所有履行发票的实体。 sent==true 条件)...有没有办法在我的数据访问层方面轻松抽象“已发送发票”?我不喜欢在我的存储库方法的一半中重复上述条件的想法。我认为使用简单的过滤视图会是最佳选择,但是怎么做呢?也许我做错了,有人会帮助我意识到:)?

0 投票
2 回答
627 浏览

asp.net - 有人知道使用 ASP.NET MVC1 或 MVC2、NHibernate、Fluent NHibernate 和 Castle 的可靠 Web 示例吗?

我正在寻找有关如何使用 ASP.NET MVC1 或 MVC2、NHibernate、Fluent NHibernate 和 Castle 的可靠非控制台示例。我看了夏普架构,对于我的新手来说,它实在是太难以消化了。我需要一个干净、清晰、简洁的步骤 A、步骤 B、步骤 C 教程或一个可靠的示例,它是一个 Web 应用程序,而不是一个控制台应用程序。我搜索了再搜索,发现了不完整的示例(仅包含足够信息的示例,让我说出该代码的去向)、控制台应用程序和没有好的 Web 应用程序示例。有谁知道一个完整的网络示例?如果我看到另一个控制台示例,我会尖叫......

0 投票
2 回答
970 浏览

database - 没有连接字符串的流畅 NHibernate ExportSchema

我想在没有声明实际数据库连接字符串的情况下生成数据库脚本。

为此,我现在使用 NHibernate ExportSchema 基于使用 Fluent NHibernate 生成的 NHibernate 配置(在我的 ISessionFactory 创建方法期间):

fluentDatabaseProvider 是一个 FluentNHibernate IPersistenceConfigurer,它是获取用于创建数据库的正确 sql 方言所必需的。

当使用现有数据库创建工厂时,一切正常。但我想要做的是在选定的数据库引擎上创建一个 NHibernate 配置对象,而不需要在幕后使用真正的数据库......而且我无法做到这一点。

如果有人有一些想法。

0 投票
4 回答
448 浏览

c# - 抽象泛型方法的问题

假设我有一个定义了几个实体接口的类库:

这个库还定义了一个IRepository接口:

最后,该库有一个名为RepositorySourceBase(见下文)的抽象类,主项目需要实现它。此类的目标是允许基类Repository在运行时获取新对象。因为需要某些存储库(在此示例中为ISomeEntityand的存储库ISomeOtherEntity),所以我正在尝试编写该GetNew<TEntity>()方法的通用重载。

以下实现无法编译(GetNew()即使 where 子句不同,第二种方法也被标记为“已定义”),但它达到了我想要完成的目标:

这个类的预期用途是这样的:


同时,在我的主项目(引用库项目)中,我实现了ISomeEntityand ISomeOtherEntity

主项目还有一个实现IRepository<TEntity>

最重要的是,它有一个抽象的实现RepositorySourceBase

与 一样RepositorySourceBase,第二种GetNew()方法被标记为“已定义”。


所以,C# 基本上认为我在重复相同的方法,因为没有办法单独将方法与其参数区分开来,但是如果你看一下我的用法示例,似乎我应该能够区分GetNew()我想要的泛型类型参数,例如,<ISomeEntity><ISomeOtherEntity>)。

我需要做什么才能使其正常工作?


更新

我最终使用专门命名的方法和Func<T, TResult>参数解决了这个问题。

所以,RepositorySourceBase现在看起来像这样:

RepositorySource看起来像这样:

现在,整个事情的开始是我需要一个通用RepositoryUtilizer类,它可以通过知道存储库的类型(可以指定为通用类型参数)从源中获取存储库。事实证明,这是不可能的(或者至少不容易做到)。但是,可以使用Func<T, TResult>委托作为参数来允许RepositoryUtilizer类获取存储库而无需“知道”方法名称。

这是一个例子:

0 投票
1 回答
274 浏览

nhibernate - 如何在 FluentNHibernate 中映射私有身份字段?

我正在尝试将我的 NHibernate 映射文件转换为 FluentNHibernate。但是,我已经坚持了我的第一次尝试。这是一个 XML 映射文件的片段:

FluentNHibernate 的默认流利语言想强迫我使用属性。虽然我确实公开了一个类型安全的 ContactId 属性以供在代码中使用,但我始终无法让 NHibernate 接受此值类型作为 Id,因此我的公共属性即时构造了一个新的值类型。

我发现在我的 FluentNHibernate ClassMap 中,我可以访问 IdMapping 并直接操作其属性(例如名称、访问权限),但是关于如何在 fluent 构建器之外执行操作的文档要少得多。例如,如何设置列?有“AddColumn(...)”,但它需要一个 ColumnMapping,这是我开始迷路的地方。

0 投票
2 回答
4290 浏览

nhibernate - 流畅的 NHibernate 获取没有唯一标识符的视图

我正在尝试映射没有标识符的视图,但 nhibernate 仍然会生成带有 id 列的 sql(给我一个 sql 错误,因为 db 中不存在 ID 列)。也许我误解了 Id() 构造函数?

构造函数评论:

创建一个在域对象或数据库中没有相应属性的 Id。这主要用于只读访问和/或视图。默认为带有“增量”生成器的 int 标识。