diff --git a/src/NHibernate.Test/Async/NHSpecificTest/NH2898/BinaryFormatterCache.cs b/src/NHibernate.Test/Async/NHSpecificTest/NH2898/BinaryFormatterCache.cs index 055df548fc..c32fcb0ef0 100644 --- a/src/NHibernate.Test/Async/NHSpecificTest/NH2898/BinaryFormatterCache.cs +++ b/src/NHibernate.Test/Async/NHSpecificTest/NH2898/BinaryFormatterCache.cs @@ -23,6 +23,31 @@ namespace NHibernate.Test.NHSpecificTest.NH2898 public partial class BinaryFormatterCache : CacheBase { + public override Task GetAsync(object key, CancellationToken cancellationToken) + { + try + { + var entry = _hashtable[key] as byte[]; + if (entry == null) + return Task.FromResult(null); + + var fmt = new BinaryFormatter + { +#if !NETFX + SurrogateSelector = new SerializationHelper.SurrogateSelector() +#endif + }; + using (var stream = new MemoryStream(entry)) + { + return Task.FromResult(fmt.Deserialize(stream)); + } + } + catch (System.Exception ex) + { + return Task.FromException(ex); + } + } + public override Task PutAsync(object key, object value, CancellationToken cancellationToken) { try diff --git a/src/NHibernate/Util/StringHelper.cs b/src/NHibernate/Util/StringHelper.cs index dd29be95bd..8b29f17830 100644 --- a/src/NHibernate/Util/StringHelper.cs +++ b/src/NHibernate/Util/StringHelper.cs @@ -872,7 +872,7 @@ public static bool IsAnyNewLine(this string str, int index, out int newLineLengt return false; } - public static string GenerateSuffix(int index) + internal static string GenerateSuffix(int index) { return index switch {