J'ai cette classe:C# 4 méthode Intercept appel
public class MyClass {
public string GetText() {
return "text";
}
}
Ce que je veux est d'avoir une méthode de mise en cache générique. Si GetText est appelé, je veux intercepter cet appel, quelque chose comme;
public T MethodWasCalled<T>(MethodInfo method) {
if(Cache.Contains(method.Name)) {
return Cache[method.Name] as T;
}
else {
T result = method.Invoke();
Cache.Add(method.Name, result);
return result;
}
}
J'espère que ce qui précède explique ce que je veux accomplir. Quelle serait une bonne stratégie pour cela?
Doh, je l'utilise tout le temps pour! – ChaosPandion