Skip to content

Commit f5a3f74

Browse files
committed
NH-3807 - Distributed transactions not supported in .netstandard
1 parent 06f2974 commit f5a3f74

File tree

5 files changed

+22
-4
lines changed

5 files changed

+22
-4
lines changed

src/NHibernate.Test/NHSpecificTest/NH2420/Fixture.cs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,13 +65,11 @@ public void ShouldBeAbleToReleaseSuppliedConnectionAfterDistributedTransaction()
6565
EnlistmentOptions.None);
6666

6767
DbConnection connection;
68-
#if !NETCOREAPP2_0
6968
if (sessions.ConnectionProvider.Driver.GetType() == typeof(OdbcDriver))
7069
{
7170
connection = new OdbcConnection(connectionString);
7271
}
7372
else
74-
#endif
7573
{
7674
connection = new SqlConnection(connectionString);
7775
}

src/NHibernate.Test/NHSpecificTest/NH3583/AutoFlushFixture.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,8 @@ public void ShouldAutoFlushWhenInExplicitTransaction()
4949
Assert.That(result.Count, Is.EqualTo(1));
5050
}
5151
}
52+
53+
#if !NETCOREAPP2_0
5254
[Test]
5355
public void ShouldAutoFlushWhenInDistributedTransaction()
5456
{
@@ -65,5 +67,6 @@ public void ShouldAutoFlushWhenInDistributedTransaction()
6567
Assert.That(result.Count, Is.EqualTo(1));
6668
}
6769
}
70+
#endif
6871
}
6972
}

src/NHibernate.Test/NHibernate.Test.csproj

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,17 @@
1717

1818
<ItemGroup Condition="'$(TargetFramework)' == 'netcoreapp2.0'">
1919
<Compile Remove="DriverTest\**" />
20+
21+
<Compile Remove="NHSpecificTest\NH1054\**" />
22+
<Compile Remove="NHSpecificTest\NH1632\**" />
23+
<Compile Remove="NHSpecificTest\NH2057\**" />
2024
<Compile Remove="NHSpecificTest\NH2188\**" />
25+
<Compile Remove="NHSpecificTest\NH2420\**" />
2126
<Compile Remove="NHSpecificTest\NH2484\**" />
2227
<Compile Remove="NHSpecificTest\NH2985\**" />
2328
<Compile Remove="NHSpecificTest\NH3121\**" />
29+
<Compile Remove="NHSpecificTest\DtcFailures\**" />
30+
<Compile Remove="SystemTransactions\NH3121\**" />
2431
<Compile Remove="SqlTest\Custom\Oracle\**" />
2532
<Compile Remove="CfgTest\DefaultNsAssmFixture.cs" />
2633
<Compile Remove="CfgTest\HbmOrderingFixture.cs" />

src/NHibernate/Cfg/SettingsFactory.cs

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -392,8 +392,16 @@ private static System.Type CreateLinqQueryProviderType(IDictionary<string, strin
392392

393393
private static ITransactionFactory CreateTransactionFactory(IDictionary<string, string> properties)
394394
{
395+
System.Type transactionFactory;
396+
397+
#if NETSTANDARD2_0
398+
transactionFactory = typeof(AdoNetTransactionFactory);
399+
#else
400+
transactionFactory = typeof(AdoNetWithDistributedTransactionFactory);
401+
#endif
402+
395403
string className = PropertiesHelper.GetString(
396-
Environment.TransactionStrategy, properties, typeof(AdoNetWithDistributedTransactionFactory).FullName);
404+
Environment.TransactionStrategy, properties, transactionFactory.FullName);
397405
log.Info("Transaction factory: " + className);
398406

399407
try

src/NHibernate/Transaction/AdoNetWithDistributedTransactionFactory.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
#if !NETSTANDARD2_0
12
using System;
23
using System.Collections;
34
using System.Transactions;
@@ -181,4 +182,5 @@ public void Dispose()
181182
}
182183
}
183184
}
184-
}
185+
}
186+
#endif

0 commit comments

Comments
 (0)