static FieldInfo[] GetFields(Type type) { FieldInfo[] fields; if (!cachedFields.TryGetValue(type, out fields)) { fields = GetInjectFields(type); cachedFields.Add(type, fields); } return fields; }