C# 不再支持ContinuousProcessing参数。NPGSQL

C# 不再支持ContinuousProcessing参数。NPGSQL,c#,asp.net,.net,npgsql,C#,Asp.net,.net,Npgsql,我刚刚将我的npgsql从2.5.5升级到3.1.1,我遇到了这个运行时错误 我的数据库连接类 public static string ServerConnectionString() { var connectionStringBuilder = new NpgsqlConnectionStringBuilder { Host = ConfigurationManager.AppSettings["Server"],

我刚刚将我的npgsql从2.5.5升级到3.1.1,我遇到了这个运行时错误

我的数据库连接类

 public static string ServerConnectionString()
    {
        var connectionStringBuilder = new NpgsqlConnectionStringBuilder
        {
            Host = ConfigurationManager.AppSettings["Server"],
            Username = ConfigurationManager.AppSettings["UserId"],
            Database = "postgres",
            Password = ConfigurationManager.AppSettings["Password"],
            CommandTimeout = Convert.ToInt32(ConfigurationManager.AppSettings["CommandTimeout"]),
            ApplicationName = EverestEnums.ConnectionApplicationName.EverestServerChecker.ToString(),
            //  MaxPoolSize = 200,
            //   SyncNotification = true,
            KeepAlive = 1,
            ConnectionLifeTime = 1,
          //  MinPoolSize = 1,
            Pooling = false
        };
        return connectionStringBuilder.ConnectionString;
    }
堆栈跟踪

[NotSupportedException: The ContinuousProcessing parameter is no longer supported. Please see http://www.npgsql.org/doc/3.1/migration.html]
Npgsql.NpgsqlConnectionStringBuilder.set_ConnectionLifeTime(Int32值)+62 E:\Everest\u PES\Everest.Net.DatabaseLayer\DBFactory\DbConnection.ServerConnectionString()中的Everest.Net.DatabaseLayer\DBFactory\DbConnection.cs:13 E:\Everest\u PES\Everest.Net.DatabaseLayer\DBFactory\DBOperations.IsServerAvailable()中的Everest.Net.DatabaseLayer\DBFactory\DBOperations.cs:216 Everest.Net.DatabaseLayer.DBFactory.ServerConnectivity.IsDbServerAvailable()位于E:\Everest\u PES\Everest.Net.DatabaseLayer\DBFactory\ServerConnectivity.cs:7 Everest.Net.BusinessLayer.DBFactory.ServerConnectivity.IsDbServerAvailable()位于E:\Everest\u PES\Everest.Net.BusinessLayer\DBFactory\ServerConnectivity.cs:12 Everest.Net.Web.Global.Application_Start(对象发送者,事件参数e)位于e:\Everest\PES\Everest.Net.Web\Global.asax.cs:15

[HttpException(0x80004005):不再支持ContinuousProcessing参数。请参阅 System.Web.HttpApplicationFactory.ensureStartCalledForIntegratedMode(HttpContext上下文,httpapplicationapp)+544 System.Web.HttpApplication.registereventsubscriptionswithis(IntPtr-appContext,HttpContext-context,MethodInfo[]handlers)+186 System.Web.HttpApplication.InitSpecial(HttpApplicationState,MethodInfo[]处理程序,IntPtr-appContext,HttpContext-context)+172 System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr-appContext,HttpContext-context)+402 System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext)+343

[HttpException(0x80004005):不再支持ContinuousProcessing参数。请参阅 System.Web.HttpRuntime.FirstRequestInit(HttpContext上下文)+579 System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext上下文)+112 System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequestWR,HttpContext上下文)+712


因为它以前工作正常。但是连接池出现了一些问题。然后我升级了npgsql,并出现了此rumtime错误。是否需要帮助。

当您在NpgsqlConnectionStringBuilder上获取或设置ConnectionLifeTime属性时,似乎会引发该异常。该属性已过时,并由连接空闲生存期pr替换属性(请参阅)。请尝试改用此选项:

 public static string ServerConnectionString()
    {
        var connectionStringBuilder = new NpgsqlConnectionStringBuilder
        {
            Host = ConfigurationManager.AppSettings["Server"],
            Username = ConfigurationManager.AppSettings["UserId"],
            Database = "postgres",
            Password = ConfigurationManager.AppSettings["Password"],
            CommandTimeout = Convert.ToInt32(ConfigurationManager.AppSettings["CommandTimeout"]),
            ApplicationName = EverestEnums.ConnectionApplicationName.EverestServerChecker.ToString(),
            //  MaxPoolSize = 200,
            //   SyncNotification = true,
            KeepAlive = 1,
            ConnectionIdleLifetime = 1,
          //  MinPoolSize = 1,
            Pooling = false
        };
        return connectionStringBuilder.ConnectionString;
    }

谢谢,先生。3.1中有很多变化