gpt4 book ai didi

c# - 是否有一种 Fluent NHibernate 方法可以在不编码的情况下索引所有外键?

转载 作者:太空宇宙 更新时间:2023-11-03 11:10:06 25 4
gpt4 key购买 nike

这可能吗,也许有约定?我有数百个表和无数的关系,我希望所有外键都被索引,但我不想编写代码。

更新

在@Vadim 的帮助下,我能够做到这一点:

var fkIndexConvention = ConventionBuilder.Reference.Always(x =>
x.Index(string.Format("ix{0}_{1}_{2}", x.Class.Name, x.Property.Name,
Guid.NewGuid().ToString().Replace("-", string.Empty))));

...然后将其添加到我的流畅配置中:

var fluent = Fluently.Configure(config)
.Mappings(m => m.FluentMappings.Conventions.Add(fkIndexConvention));

...世界变得更美好了。

最佳答案

我假设您正在谈论使用 hbm2ddl 工具和 SchemaExport。

您需要做的就是设置引用约定。由于 IManyToOneInstance 隐藏了外键,您应该能够将该实例转换为 IManyToOneInspector

ConventionBuilder.Reference.Always(x => x.Index(((IManyToOneInspector)x).ForeignKey + "Index"));

关于c# - 是否有一种 Fluent NHibernate 方法可以在不编码的情况下索引所有外键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14371660/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com