Directory.Build.targets: Added FEATURE_CULTUREINFO_CURRENTCULTURE_SETTER and implemented throughout solution
diff --git a/Directory.Build.targets b/Directory.Build.targets
index 2933f5c..9086060 100644
--- a/Directory.Build.targets
+++ b/Directory.Build.targets
@@ -21,8 +21,11 @@
 <Project>
   <!-- Features in .NET Standard and .NET Core only (no .NET Framework support) -->
   <PropertyGroup Condition=" $(TargetFramework.StartsWith('netstandard')) Or $(TargetFramework.StartsWith('netcoreapp')) ">
+    
     <DefineConstants>$(DefineConstants);NETSTANDARD</DefineConstants>
     <DefineConstants>$(DefineConstants);FEATURE_ARRAYEMPTY</DefineConstants>
+    <DefineConstants>$(DefineConstants);FEATURE_CULTUREINFO_CURRENTCULTURE_SETTER</DefineConstants>
+    
     <DebugType>portable</DebugType>
   </PropertyGroup>
 
diff --git a/src/Lucene.Net.TestFramework/Util/TestRuleSetupAndRestoreClassEnv.cs b/src/Lucene.Net.TestFramework/Util/TestRuleSetupAndRestoreClassEnv.cs
index 7e37025..5363ed5 100644
--- a/src/Lucene.Net.TestFramework/Util/TestRuleSetupAndRestoreClassEnv.cs
+++ b/src/Lucene.Net.TestFramework/Util/TestRuleSetupAndRestoreClassEnv.cs
@@ -287,7 +287,7 @@
             savedLocale = CultureInfo.CurrentCulture;
             CultureInfo randomLocale = LuceneTestCase.RandomCulture(random);
             locale = testLocale.Equals("random", StringComparison.Ordinal) ? randomLocale : LuceneTestCase.CultureForName(testLocale);
-#if NETSTANDARD
+#if FEATURE_CULTUREINFO_CURRENTCULTURE_SETTER
             CultureInfo.CurrentCulture = locale;
 #else
             Thread.CurrentThread.CurrentCulture = locale;
@@ -384,7 +384,7 @@
             if (savedLocale != null)
             {
                 locale = savedLocale;
-#if NETSTANDARD
+#if FEATURE_CULTUREINFO_CURRENTCULTURE_SETTER
                 CultureInfo.CurrentCulture = savedLocale;
 #else
                 Thread.CurrentThread.CurrentCulture = savedLocale;
diff --git a/src/Lucene.Net.Tests.Analysis.Phonetic/Language/StringEncoderAbstractTest.cs b/src/Lucene.Net.Tests.Analysis.Phonetic/Language/StringEncoderAbstractTest.cs
index 4f0ed6c..b52badc 100644
--- a/src/Lucene.Net.Tests.Analysis.Phonetic/Language/StringEncoderAbstractTest.cs
+++ b/src/Lucene.Net.Tests.Analysis.Phonetic/Language/StringEncoderAbstractTest.cs
@@ -123,7 +123,7 @@
                     for (int j = 0; j < locales.Length; j++)
                     {
                         //Locale.setDefault(locales[j]);
-#if NETSTANDARD
+#if FEATURE_CULTUREINFO_CURRENTCULTURE_SETTER
                         CultureInfo.CurrentCulture = locales[j];
 #else
                         Thread.CurrentThread.CurrentCulture = locales[j];
@@ -151,7 +151,7 @@
             finally
             {
                 //Locale.setDefault(orig);
-#if NETSTANDARD
+#if FEATURE_CULTUREINFO_CURRENTCULTURE_SETTER
                 CultureInfo.CurrentCulture = orig;
 #else
                 Thread.CurrentThread.CurrentCulture = orig;
diff --git a/src/Lucene.Net.Tests/Support/TestToStringUtils.cs b/src/Lucene.Net.Tests/Support/TestToStringUtils.cs
index e3f14b2..00c8412 100644
--- a/src/Lucene.Net.Tests/Support/TestToStringUtils.cs
+++ b/src/Lucene.Net.Tests/Support/TestToStringUtils.cs
@@ -40,7 +40,7 @@
 
         public override void TearDown()
         {
-#if !NETSTANDARD
+#if !FEATURE_CULTUREINFO_CURRENTCULTURE_SETTER
             Thread.CurrentThread.CurrentCulture = originalCulture;
 #else
             CultureInfo.CurrentCulture = originalCulture;
@@ -65,7 +65,7 @@
 
             foreach (CultureInfo culture in cultures)
             {
-#if !NETSTANDARD
+#if !FEATURE_CULTUREINFO_CURRENTCULTURE_SETTER
                 Thread.CurrentThread.CurrentCulture = culture;
 #else
                 CultureInfo.CurrentCulture = culture;