gpt4 book ai didi

c# - 如何在带有 sequelizer 附加组件的 appharbor 上运行的应用程序中启用 MultipleActiveResultSets?

转载 作者:太空狗 更新时间:2023-10-30 00:44:09 24 4
gpt4 key购买 nike

在本地开发时,我有一个连接字符串集,其 MultipleActiveResultSets 设置为 TRUE。但是,当我部署我的应用程序并注入(inject) sequelizer connectionString 时,MultipleActiveResultSets 被排除在外。无论如何启用 MultipleActiveResultSets 或以其他方式更新连接字符串?

顺便说一下,我正在使用 Entity Framework 4.1。

最佳答案

更新:现在可以使用 Sequelizer 管理面板为注入(inject)的连接字符串启用多个事件结果集 (MARS)。这是推荐的方法,因为不再需要修改 web.config,这会导致 AppDomain 在启动期间重新加载

您可以从注入(inject)到您的应用程序 web.config 中的 URI 构建连接字符串。过程描述here ,但我也包括以下代码段:

var uriString = ConfigurationManager.AppSettings["SQLSERVER_URI"];
var uri = new Uri(uriString);
var connectionString = new SqlConnectionStringBuilder
{
DataSource = uri.Host,
InitialCatalog = uri.AbsolutePath.Trim('/'),
UserID = uri.UserInfo.Split(':').First(),
Password = uri.UserInfo.Split(':').Last(),
MultipleActiveResultSets = true,
}.ConnectionString;

注意 MultipleActiveResultSets = true

如果您还需要构建一个非代码优先的连接字符串,则您需要为其余部分使用 EntityConnectionStringBuilder,例如:

var builder = new EntityConnectionStringBuilder();
builder.ProviderConnectionString = connectionString;
builder.Metadata = "somemetadata";
builder.Provider = "System.Data.SqlClient";

(也为 answered on the AppHarbor support forum)

关于c# - 如何在带有 sequelizer 附加组件的 appharbor 上运行的应用程序中启用 MultipleActiveResultSets?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8609651/

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