@@ -387,9 +387,8 @@ public static PropertyDefinition InjectProperty(BaseModuleWeaver weaver, MethodD
387387 {
388388 //Import Reference
389389 TypeDefinition mdlClass = methodDefinition . DeclaringType ;
390- var refModule = ModuleDefinition . ReadModule ( "Cache.dll" ) ;
390+ var refModule = ReferenceFinder . CacheAssembly . MainModule ;
391391 var refInterface = refModule . GetType ( "Cache.ICacheProvider" ) ;
392- //mdlClass.Module.ImportReference(refInterface);
393392
394393 //define the field we store the value in
395394 FieldDefinition field = new FieldDefinition (
@@ -440,31 +439,6 @@ public static void WeaveMethod(BaseModuleWeaver weaver, MethodDefinition methodD
440439 PropertyDefinition propertyInject = null ;
441440 if ( propertyGet == null && methodDefinition . IsStatic && ! methodDefinition . DeclaringType . Properties . Any ( p => p . Name == "Cache" ) )
442441 {
443- //add field
444- //FieldDefinition fldCache = new FieldDefinition("Cache", FieldAttributes.Public | FieldAttributes.Static,
445- // new TypeReference("Cache", "ICacheProvider", methodDefinition.Module, methodDefinition.Module));
446-
447- //add property
448- //PropertyDefinition property = new PropertyDefinition("Cache", PropertyAttributes.None,
449- // moduleClass.Module.ImportReference(t));
450- //moduleClass.Module.ImportReference(new TypeReference("Cache", "ICacheProvider", refModule, refModule));
451- //moduleClass.Module.ImportReference(t);
452-
453-
454- //add getter
455-
456- //property.GetMethod = new MethodDefinition("get_Cache", MethodAttributes.Static | MethodAttributes.Public | MethodAttributes.HideBySig | MethodAttributes.SpecialName,
457- // moduleClass.Module.ImportReference(t));
458- //property.GetMethod.DeclaringType = moduleClass;
459- //property.GetMethod.ReturnType = t;
460- //foreach (var item in p.GetMethod.Body.Instructions)
461- //{
462- // property.GetMethod.Body.Instructions.Add(item);
463- //}
464-
465-
466-
467- //moduleClass.Properties.Add(property);
468442 propertyInject = InjectProperty ( weaver , methodDefinition ) ;
469443 propertyGet = propertyInject . GetMethod ;
470444 }
@@ -505,10 +479,10 @@ public static void WeaveMethod(BaseModuleWeaver weaver, MethodDefinition methodD
505479
506480 current = SetCacheKeyLocalVariable ( weaver , current , methodDefinition , processor , cacheKeyIndex , objectArrayIndex ) ;
507481
508- //
482+ //init CacheProvider when static method called
509483 if ( methodDefinition . IsStatic )
510484 {
511- var refModule = ModuleDefinition . ReadModule ( "Cache.dll" ) ;
485+ var refModule = ReferenceFinder . CacheAssembly . MainModule ;
512486 var refProvider = refModule . GetType ( "Cache.CacheProvider" ) ;
513487 var refProviderGet = refProvider . Method ( "get_Provider" ) ;
514488 var refSetter = propertyInject . SetMethod ;
0 commit comments