private void InitHostingEnvironment() { try { var env = new HostingEnvironment(); var type = env.GetType(); var init = type .GetMethods(BindingFlags.Instance | BindingFlags.NonPublic) .FirstOrDefault(m => m.Name == "Initialize"); var args = new object[init.GetParameters().Length]; args[0] = ApplicationManager.GetApplicationManager(); args[1] = this; args[2] = GetConfigMapPathFactory(); init.Invoke(env, args); } catch (Exception e) { Console.WriteLine(e); } }
private void SetPrivateField(HostingEnvironment hostingEnvironment, string fieldName, object value) { var fieldInfo = hostingEnvironment.GetType().GetField(fieldName, BindingFlags.Instance | BindingFlags.NonPublic); fieldInfo.SetValue(hostingEnvironment, value); }