问题标签 [sql-server-mars]
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.
asp.net - Membership.GetUser() & MARS
我正在使用 asp.net 成员资格,并且需要在我有另一个打开的 SQL 连接时调用 Membership.GetUser(),但我的代码在那个调用中死掉了。我的代码和成员资格提供程序都使用的连接字符串中有 MultipleActiveResultSets=True。Membership 类似乎忽略了连接字符串的 MARS 部分。
关于如何让 MARS 与 Membership 类一起工作的任何建议,以便我可以解决这个问题?
谢谢,
斯科特
sql-server-2005 - MARS(多个活动结果集)的缺点?
有谁知道 MARS(多个活动结果集)的任何缺点?有谁知道为什么应该避免使用 MARS,例如游标比 MARS 更有用的情况。
ado.net - MARS 与 NextResult
我通过从多个表中收集数据来补充我的业务对象,例如,
等等...(C# 3.5,SQL Server 2005)
我一直在使用批次:
我还对同一个连接使用了多个命令:
这些技术中的一种是否明显优于另一种?另外,如果我在第二种方法中使用 MARS 会有收益吗?换句话说,是不是像在连接字符串中设置 MultipleActiveResultSets=True 一样简单,并收获很大的好处?
c# - 使用 Mars 更新 7000 行是否有效?
我有一项使用 MARS 更新/插入 7000 多行的服务。有一个更好的方法吗?
entity-framework - EF-Reference.Load() - 已经有一个打开的 DataReader
看起来 EF Reference.Load() 在没有 MARS 的情况下无法工作?是对的吗?
odbc - ODBC 来自 MARS,而 ADO/OLEDB 来自 VENUS?
简短的问题:我发现我需要通过 ODBC 使用 MARS,而不是通过 ADO/OLEDB,对吗?
更长的解释:
我刚刚发现我的 ODBC 代码(使用“Driver={SQL Native Client}”,MFC CDatabase 代码)需要 MARS(“MARS_Connection=yes;”),因为虽然我在打开 RecordSet 时没有发出多个 SELECT,但我确实这样做了获取一批行,然后需要打开另一个RecordSet发出新的SELECT,然后返回第一个RecordSet进行下一批。如果没有 MARS,我会收到 ODBC 错误“连接正忙于处理另一个命令的结果”。一切都很公平。
但是,我的代码与 ADO/OLEDB ("Provider=SQLNCLI", #import msado15.dll) 而不是 ODBC 的工作方式相同。在同样的情况下,我不必指定“MarsConn=yes”。
我很困惑/惊讶。这是正确的/预期的,还是我错过了什么?
sql-server - 不支持关键字 MultipleActiveResultSets
我们在 ASP.NET MVC 应用程序中使用自定义成员资格提供程序。我们一直在遇到间歇性“System.InvalidOperationException - 已经有一个打开的 DataReader 与此命令关联,必须先关闭它。” 类的问题,所以我决定启用 MARS。
这是网络配置中的连接字符串...
我们的代码现在在以下行抛出 ArgumentException: Keyword not supported: 'multipleactiverecordsets'。
以 SQL2005 Express 和 SQL2008 Standard 版本为目标时会出现相同的异常。有什么建议么?
作为对 AdaTheDev 的回应,这里是使用数据读取器的方法......
我看不出这会在同一连接上创建多个数据读取器的任何原因。
c# - SQL 异常:无法在此批处理中调用“模拟会话安全上下文”,因为同时批处理已调用它
从我们的 Web 应用程序打开到 SQL Server 2005 的连接时,我们偶尔会看到以下错误:
无法在此批处理中调用“模拟会话安全上下文”,因为同时批处理已调用它。
我们使用 MARS 和连接池。
异常源自以下代码:
我发现了一篇MS Connect 文章,该文章表明该错误是由于在发送 EXECUTE AS LOGIN 命令之前之前的命令尚未终止而引起的。然而,如果连接刚刚打开,这怎么可能呢?
这可能与连接池与 MARS 的奇怪交互有关吗?
更新:在短期内,我们通过在发生这种情况时清除连接池来实现一种解决方法,以摆脱不良连接,否则它会不断交还给各种用户。(现在这种情况每天发生 5-10 次,只有少数同时用户,所以这很烦人。)但是如果有人有任何进一步的想法,我们仍在寻找真正的解决方案......
sql-server - MARS 对 NHibernate 有什么影响?
我正在将实体框架与 NHibernate 进行比较,我想知道在使用 SQL Server 时,启用或禁用 MARS 支持对 NHibernate 有什么影响(如果有)?
MARS = 多个活动结果集
实体框架文档说明了以下内容:
当您在(C#) 或(Visual Basic) 枚举
Load
期间调用该方法时 ,实体框架会尝试打开一个新的数据读取器。除非您通过在连接字符串中指定启用了多个活动结果集,否则此操作将失败。有关详细信息,请参阅MSDN 上的使用多个活动结果集 (MARS)。您还可以将查询结果加载到 List 集合中,这会关闭数据读取器并使您能够枚举集合以加载引用的实体。foreach
For Each
multipleactiveresultsets=true
NHibernate 有同样的问题吗?
c# - 使用 c# 的 PDF 到 XML 的表格格式
如何将仅包含表格的 PDF 文件转换为等效的 XML 格式?