CB-11154 (Windows) Return IANA timezone as an empty string instead of undefined
diff --git a/README.md b/README.md
index d298789..36fdf44 100644
--- a/README.md
+++ b/README.md
@@ -500,6 +500,8 @@
 
 - The `timezone` returns the full time zone name.
 
+- The `iana_timezone` property is not supported, and always returns empty string.
+
 - The `dst_offset` property is not supported, and always returns zero.
 
 - The pattern may be not completely aligned with ICU depending on a user locale.
diff --git a/src/windows/GlobalizationProxy.winmd b/src/windows/GlobalizationProxy.winmd
index bf61069..92925b3 100644
--- a/src/windows/GlobalizationProxy.winmd
+++ b/src/windows/GlobalizationProxy.winmd
Binary files differ
diff --git a/src/windows/GlobalizationProxy/GlobalizationProxy/Globalization/GlobalizationApiTypes.cs b/src/windows/GlobalizationProxy/GlobalizationProxy/Globalization/GlobalizationApiTypes.cs
index 5641b21..9a27351 100644
--- a/src/windows/GlobalizationProxy/GlobalizationProxy/Globalization/GlobalizationApiTypes.cs
+++ b/src/windows/GlobalizationProxy/GlobalizationProxy/Globalization/GlobalizationApiTypes.cs
@@ -395,6 +395,12 @@
         public string TimeZone { get; set; }
 
         /// <summary>
+        /// IANA TimeZone
+        /// </summary>
+        [DataMember(Name = "iana_timezone", IsRequired = false)]
+        public string IanaTimeZone { get; set; }
+
+        /// <summary>
         /// UTC offset
         /// </summary>
         [DataMember(Name = "utc_offset", IsRequired = false)]
@@ -411,12 +417,14 @@
         /// </summary>
         /// <param name="pattern"></param>
         /// <param name="timezone"></param>
+        /// <param name="ianaTimezone"></param>
         /// <param name="utcOffset"></param>
         /// <param name="dstOffset"></param>
-        public DatePattern(string pattern, string timezone, double utcOffset, double dstOffset)
+        public DatePattern(string pattern, string timezone, string ianaTimezone, double utcOffset, double dstOffset)
         {
             this.Pattern = pattern;
             this.TimeZone = timezone;
+            this.IanaTimeZone = ianaTimezone;
             this.UtcOffset = utcOffset;
             this.DstOffset = dstOffset;
         }
diff --git a/src/windows/GlobalizationProxy/GlobalizationProxy/Globalization/GlobalizationImpl.cs b/src/windows/GlobalizationProxy/GlobalizationProxy/Globalization/GlobalizationImpl.cs
index 7e2b772..fd5d227 100644
--- a/src/windows/GlobalizationProxy/GlobalizationProxy/Globalization/GlobalizationImpl.cs
+++ b/src/windows/GlobalizationProxy/GlobalizationProxy/Globalization/GlobalizationImpl.cs
@@ -349,7 +349,7 @@
             }
 
             TimeZoneInfo localZone = TimeZoneInfo.Local;
-            return new DatePattern(pattern, localZone.DisplayName, localZone.BaseUtcOffset.TotalSeconds, 0);
+            return new DatePattern(pattern, localZone.DisplayName, String.Empty, localZone.BaseUtcOffset.TotalSeconds, 0);
         }
 
         /// <summary>
diff --git a/tests/tests.js b/tests/tests.js
index 010fc74..30e8398 100644
--- a/tests/tests.js
+++ b/tests/tests.js
@@ -263,9 +263,12 @@
                     expect(a.timezone.length > 0).toBe(true);
                 }
                 if (!isBrowser && !isWindowsPhone) {
-                  expect(a.iana_timezone).toBeDefined();
-                  expect(typeof a.iana_timezone).toBe('string');
-                  expect(a.iana_timezone.length > 0).toBe(true);
+                    expect(a.iana_timezone).toBeDefined();
+                    expect(typeof a.iana_timezone).toBe('string');
+                    // Windows doesn't support IANA timezone and always returns an empty string instead
+                    if (!isWindows) {
+                        expect(a.iana_timezone.length > 0).toBe(true);
+                    }
                 }
                 expect(a.utc_offset).toBeDefined();
                 expect(typeof a.utc_offset).toBe('number');