1
1
// Copyright (c) MASA Stack All rights reserved.
2
2
// Licensed under the MIT License. See LICENSE.txt in the project root for license information.
3
3
4
- namespace Masa . BuildingBlocks . Globalization . I18N ;
4
+ namespace Masa . BuildingBlocks . Globalization . I18n ;
5
5
6
- public class I18nOfT < TResourceSource > : II18N < TResourceSource >
6
+ public class I18nOfT < TResourceSource > : II18nOfT < TResourceSource > where TResourceSource : class
7
7
{
8
- private readonly I18NResource ? _resource ;
9
- private readonly List < I18NResource ? > _baseResources ;
8
+ private readonly I18nResource ? _resource ;
9
+ private readonly List < I18nResource ? > _baseResources ;
10
10
11
11
public string this [ string name ] => T ( name ) ;
12
12
@@ -18,24 +18,37 @@ public class I18nOfT<TResourceSource> : II18N<TResourceSource>
18
18
19
19
public I18nOfT ( )
20
20
{
21
- _resource = I18NResourceResourceConfiguration . Resources . GetOrNull < TResourceSource > ( ) ;
21
+ _resource = I18nResourceResourceConfiguration . Resources . GetOrNull < TResourceSource > ( ) ;
22
22
23
23
_baseResources = _resource ? . BaseResourceTypes
24
- . Select ( resourceType => I18NResourceResourceConfiguration . Resources . GetOrNull ( resourceType ) )
25
- . ToList ( ) ?? new List < I18NResource ? > ( ) ;
24
+ . Select ( resourceType => I18nResourceResourceConfiguration . Resources . GetOrNull ( resourceType ) )
25
+ . ToList ( ) ?? new List < I18nResource ? > ( ) ;
26
26
}
27
27
28
- public virtual string T ( string name )
29
- => T ( name , true ) ! ;
28
+ public virtual string T ( string name ) => T ( name , true ) ! ;
30
29
31
30
/// <summary>
32
31
/// Gets the string resource with the given name.
33
32
/// </summary>
34
33
/// <param name="name">The name of the string resource.</param>
35
34
/// <param name="returnKey">Return Key when key does not exist, default: true</param>
36
35
/// <returns></returns>
37
- public virtual string ? T ( string name , bool returnKey )
38
- => Core ( name , returnKey , out _ ) ;
36
+ public virtual string ? T ( string name , bool returnKey ) => Core ( name , returnKey , out _ ) ;
37
+
38
+ public virtual string T ( string name , params object [ ] arguments )
39
+ => T ( name , true , arguments ) ! ;
40
+
41
+ public virtual string ? T ( string name , bool returnKey , params object [ ] arguments )
42
+ {
43
+ ArgumentNullException . ThrowIfNull ( name ) ;
44
+
45
+ var value = Core ( name , returnKey , out bool isExist ) ;
46
+
47
+ if ( isExist )
48
+ return string . Format ( GetCultureInfo ( ) , value ! , arguments ) ;
49
+
50
+ return returnKey ? name : null ;
51
+ }
39
52
40
53
/// <summary>
41
54
/// Gets the string resource with the given name.
@@ -64,7 +77,7 @@ public virtual string T(string name)
64
77
65
78
public virtual string ? GetOrNull ( string name ) => GetOrNull ( _resource , name ) ;
66
79
67
- public virtual string ? GetOrNull ( I18NResource ? i18NResource , string name )
80
+ public virtual string ? GetOrNull ( I18nResource ? i18NResource , string name )
68
81
{
69
82
if ( i18NResource == null )
70
83
return null ;
@@ -73,21 +86,6 @@ public virtual string T(string name)
73
86
return resourceContributor ? . GetOrNull ( name ) ;
74
87
}
75
88
76
- public virtual string T ( string name , params object [ ] arguments )
77
- => T ( name , true , arguments ) ! ;
78
-
79
- public virtual string ? T ( string name , bool returnKey , params object [ ] arguments )
80
- {
81
- ArgumentNullException . ThrowIfNull ( name ) ;
82
-
83
- var value = Core ( name , returnKey , out bool isExist ) ;
84
-
85
- if ( isExist )
86
- return string . Format ( GetCultureInfo ( ) , value ! , arguments ) ;
87
-
88
- return returnKey ? name : null ;
89
- }
90
-
91
89
public virtual CultureInfo GetCultureInfo ( ) => CultureInfo . CurrentCulture ;
92
90
93
91
public virtual void SetCulture ( string cultureName , bool useUserOverride = true )
0 commit comments