@@ -42,9 +42,17 @@ public ResourceAssetCollection ResolveResourceCollection()
4242#if ! MVC_VIEWFEATURES
4343 string ? label = null ;
4444 string ? integrity = null ;
45+ string ? preloadRel = null ;
46+ string ? preloadAs = null ;
47+ string ? preloadPriority = null ;
48+ string ? preloadCrossorigin = null ;
4549#else
4650 string label = null ;
4751 string integrity = null ;
52+ string preloadRel = null ;
53+ string preloadAs = null ;
54+ string preloadPriority = null ;
55+ string preloadCrossorigin = null ;
4856#endif
4957
5058 // If there's a selector this means that this is an alternative representation for a resource, so skip it.
@@ -59,15 +67,34 @@ public ResourceAssetCollection ResolveResourceCollection()
5967 label = property . Value ;
6068 foundProperties ++ ;
6169 }
62-
6370 else if ( property . Name . Equals ( "integrity" , StringComparison . OrdinalIgnoreCase ) )
6471 {
6572 integrity = property . Value ;
6673 foundProperties ++ ;
6774 }
75+ else if ( property . Name . Equals ( "preloadrel" , StringComparison . OrdinalIgnoreCase ) )
76+ {
77+ preloadRel = property . Value ;
78+ foundProperties ++ ;
79+ }
80+ else if ( property . Name . Equals ( "preloadas" , StringComparison . OrdinalIgnoreCase ) )
81+ {
82+ preloadAs = property . Value ;
83+ foundProperties ++ ;
84+ }
85+ else if ( property . Name . Equals ( "preloadpriority" , StringComparison . OrdinalIgnoreCase ) )
86+ {
87+ preloadPriority = property . Value ;
88+ foundProperties ++ ;
89+ }
90+ else if ( property . Name . Equals ( "preloadcrossorigin" , StringComparison . OrdinalIgnoreCase ) )
91+ {
92+ preloadCrossorigin = property . Value ;
93+ foundProperties ++ ;
94+ }
6895 }
6996
70- AddResource ( resources , descriptor , label , integrity , foundProperties ) ;
97+ AddResource ( resources , descriptor , label , integrity , preloadRel , preloadAs , preloadPriority , preloadCrossorigin , foundProperties ) ;
7198 }
7299 }
73100
@@ -97,11 +124,19 @@ private static void AddResource(
97124#if ! MVC_VIEWFEATURES
98125 string ? label ,
99126 string ? integrity ,
127+ string ? preloadRel ,
128+ string ? preloadAs ,
129+ string ? preloadPriority ,
130+ string ? preloadCrossorigin ,
100131#else
101132 string label ,
102133 string integrity ,
134+ string preloadRel ,
135+ string preloadAs ,
136+ string preloadPriority ,
137+ string preloadCrossorigin ,
103138#endif
104- int foundProperties )
139+ int foundProperties )
105140 {
106141 if ( label != null || integrity != null )
107142 {
@@ -115,6 +150,22 @@ private static void AddResource(
115150 {
116151 properties [ index ++ ] = new ResourceAssetProperty ( "integrity" , integrity ) ;
117152 }
153+ if ( preloadRel != null )
154+ {
155+ properties [ index ++ ] = new ResourceAssetProperty ( "preloadrel" , preloadRel ) ;
156+ }
157+ if ( preloadAs != null )
158+ {
159+ properties [ index ++ ] = new ResourceAssetProperty ( "preloadas" , preloadAs ) ;
160+ }
161+ if ( preloadPriority != null )
162+ {
163+ properties [ index ++ ] = new ResourceAssetProperty ( "preloadpriority" , preloadPriority ) ;
164+ }
165+ if ( preloadCrossorigin != null )
166+ {
167+ properties [ index ++ ] = new ResourceAssetProperty ( "preloadcrossorigin" , preloadCrossorigin ) ;
168+ }
118169
119170 resources . Add ( new ResourceAsset ( descriptor . Route , properties ) ) ;
120171 }
0 commit comments