예제 #1
0
        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);
            }
        }
예제 #2
0
        private void SetPrivateField(HostingEnvironment hostingEnvironment, string fieldName, object value)
        {
            var fieldInfo = hostingEnvironment.GetType().GetField(fieldName, BindingFlags.Instance | BindingFlags.NonPublic);

            fieldInfo.SetValue(hostingEnvironment, value);
        }