gpt4 book ai didi

c# - 如何设置默认的 NHibernate CommandTimeOut 默认值

转载 作者:行者123 更新时间:2023-11-30 13:04:39 25 4
gpt4 key购买 nike

如何使用 CaSTLe ActiveRecord 设置 Session.DBCommand.CommandTimeOut NHibernate 默认值?

此配置行不起作用。

<activerecord >
<config>
<add key="command_timeout" value="60"/>
</config>
</activerecord>

编辑:我需要一些代码来在创建命令时更改 CommandTimeOut 值,反射如何动态设置值?或 PostSharp?有人知道怎么做吗?

最佳答案

在 Fluent Initialise 方法中,您必须传递几个参数,

public static void Initialise(string connStr)
{
_Factory = Fluently.Configure().Database(
MsSqlConfiguration.MsSql2005
.ConnectionString(connStr))
.Mappings(m => m.FluentMappings.AddFromAssemblyOf<SessionHandler>())
.ExposeConfiguration(cfg =>
{
// This will set the command_timeout property on factory-level
cfg.SetProperty(NHibernate.Cfg.Environment.CommandTimeout, "180");
// This will set the command_timeout property on system-level
NHibernate.Cfg.Environment.Properties.Add(NHibernate.Cfg.Environment.CommandTimeout, "180");

})
.BuildSessionFactory();
}

注意每个属性后面的“180”,这会将命令超时设置为 3 分钟

编辑:刚刚注意到你想在一个记录一个记录的基础上做这个,哎呀!

关于c# - 如何设置默认的 NHibernate CommandTimeOut 默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8167993/

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