Advertisement
Guest User

Untitled

a guest
Jun 19th, 2019
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.63 KB | None | 0 0
  1. using System.Globalization;
  2. using System.Resources;
  3.  
  4. namespace Resources
  5. {
  6. internal static class Messages
  7. {
  8. private static ResourceManager _resourceManager;
  9. public static ResourceManager ResourceManager
  10. {
  11. get
  12. {
  13. if (_resourceManager == null)
  14. {
  15. _resourceManager = new ResourceManager();
  16. }
  17. return _resourceManager;
  18. }
  19. }
  20.  
  21. public static string Example => ResourceManager.GetString("Example", CultureInfo.CurrentUICulture);
  22. }
  23.  
  24. public static class MessagesWrapper
  25. {
  26. public static string Example(CultureInfo culture) => Messages.ResourceManager.GetString("Example", culture);
  27. }
  28.  
  29. public interface IResourceManager
  30. {
  31. string GetString(string key, CultureInfo culture);
  32. }
  33.  
  34. public class ResourceManagerWrapper : IResourceManager
  35. {
  36. private ResourceManager _resourceManager;
  37.  
  38. public ResourceManagerWrapper(ResourceManager rm)
  39. {
  40. _resourceManager = rm;
  41. }
  42.  
  43. public string GetString(string key, CultureInfo culture) => _resourceManager.GetString(key, culture);
  44. }
  45.  
  46. public static class NewMessagesWrapper
  47. {
  48. private static IResourceManager _resourceManager;
  49. private static Resource => _resourceManager ?? new ResourceManagerWrapper(Messages.ResourceManager);
  50.  
  51. public static void SetResourceManager(IResourceManager rm)
  52. {
  53. _resourceManager = rm;
  54. }
  55.  
  56. public static string Example(CultureInfo culture) => Resource.GetString("Example", culture);
  57. }
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement