public static void RenderIndex()
        {
            Type controllerType = typeof(DirectoryListController);
            var controller = ObjectFactory.GetInstance(controllerType) as DirectoryListController;
            var repositories = controller.repositories;

            HttpContext context = System.Web.HttpContext.Current;
            try
            {
                var settings = RepositoryService.AppSettings;
                var model = new DirectoryListViewModel
                  {
                      RepositoriesDirectory = repositories.GetRepositoriesDirectory().FullName,
                      Repositories = repositories.GetAllRepositories(null, null)
                        .Select(x => new RepositoryViewModel(x))
                  };
                var view = controller.Index(null, null);

                var baseCtx = context.Request.RequestContext.HttpContext as HttpContextBase;
                var routeData = new System.Web.Routing.RouteData();
                routeData.Values.Add("Action", "Index");
                routeData.Values.Add("Controller", "DirectoryList");
                var mvcCtx = new ControllerContext(baseCtx, routeData, controller);
                view.ExecuteResult(mvcCtx);
            }
            catch (Exception ex)
            {
                context.Response.Write("<b>Error</b><br/> " + ex.ToString().Replace(Environment.NewLine, "<br/>"));
            }
        }
        public RouteDataMessage(int routeHashCode, System.Web.Routing.RouteData routeData, string routeName)
        {
            IsMatch       = routeData != null;
            RouteHashCode = routeHashCode;
            RouteName     = routeName;

            if (routeData != null)
            {
                Values = routeData.Values;
            }
        }
Exemple #3
0
        /// <summary>
        /// Creates fake (empty) Mvc controller to allow render the view
        /// </summary>
        /// <returns></returns>
        private System.Web.Mvc.Controller createController()
        {
            System.Web.Mvc.Controller mvcController = new Controllers.MvcController();

            System.Web.HttpContextWrapper wrapper   = new System.Web.HttpContextWrapper(System.Web.HttpContext.Current);
            System.Web.Routing.RouteData  routeData = new System.Web.Routing.RouteData();
            routeData.Values.Add("controller", controllerName);

            mvcController.ControllerContext = new System.Web.Mvc.ControllerContext(wrapper, routeData, mvcController);

            return(mvcController);
        }
Exemple #4
0
        protected ActionResult BlogIndexResult()
        {
            BlogController blogController = new BlogController();

            System.Web.Routing.RouteData routeData = this.RouteData;
            routeData.Values["action"]     = "Index";
            routeData.Values["controller"] = "Blog";
            routeData.DataTokens["area"]   = "";

            blogController.ControllerContext = new ControllerContext(HttpContext, routeData, blogController);
            blogController.TempData          = this.TempData;
            return(blogController.Index(null, null));
        }
 public RequestContext(HttpContextBase httpContext, System.Web.Routing.RouteData routeData)
 {
     if (httpContext == null)
     {
         throw new ArgumentNullException("httpContext");
     }
     if (routeData == null)
     {
         throw new ArgumentNullException("routeData");
     }
     this.HttpContext = httpContext;
     this.RouteData   = routeData;
 }
Exemple #6
0
        PublisherController()
        {
            System.Web.Routing.RouteData context = System.Web.HttpContext.Current.Request.RequestContext.RouteData;
            this.PublishApi(context);
            _connectionString = ConfigurationManager.ConnectionStrings["MongoDB"].ConnectionString;
            //take database name from connection string
            _databaseName = ConfigurationManager.AppSettings["DatabaseName"];
            _server       = new MongoClient(_connectionString);

            //and then get database by database name:
            _database   = _server.GetDatabase(_databaseName);
            _collection = _database.GetCollection <User>("Users");
        }
Exemple #7
0
        protected ActionResult HomePageResult()
        {
            PageController pageController = new PageController();

            System.Web.Routing.RouteData routeData = this.RouteData;
            routeData.Values["action"]     = "Display";
            routeData.Values["controller"] = "Page";
            routeData.DataTokens["area"]   = "";

            pageController.ControllerContext = this.ControllerContext;
            pageController.TempData          = this.TempData;
            return(pageController.Display());
        }
Exemple #8
0
 /// <summary>
 /// Get current routing value
 /// </summary>
 /// <param name="routeData"></param>
 /// <param name="type">Requested routing type</param>
 /// <returns>string</returns>
 public static string Routing(this System.Web.Routing.RouteData routeData, RoutingType type)
 {
     try
     {
         return(type == RoutingType.Area
                                 ? routeData.DataTokens[type.ToString().ToLower()].ToString()
                                 : routeData.Values[type.ToString().ToLower()].ToString());
     }
     catch (System.NullReferenceException)
     {
         return(string.Empty);
     }
 }
Exemple #9
0
        protected ActionResult CatalogIndexResult()
        {
            CatalogController catalogController = new CatalogController();

            System.Web.Routing.RouteData routeData = this.RouteData;
            routeData.Values["action"]     = "Index";
            routeData.Values["controller"] = "Catalog";
            routeData.DataTokens["area"]   = "";

            catalogController.ControllerContext = new ControllerContext(HttpContext, routeData, catalogController);
            catalogController.TempData          = this.TempData;
            return(catalogController.Index());
        }
        // nya

        protected string RenderPartialViewToString(PartialViewResult viewResult, Controller controller, string viewName)
        {
            ViewData.Model = viewResult.Model;
            var controllerContext = new ControllerContext(HttpContext, RouteData, controller);
            var routeData         = new System.Web.Routing.RouteData();

            using (var sw = new StringWriter())
            {
                ViewEngineResult viewResult2 = ViewEngines.Engines.FindPartialView(controllerContext, viewName);

                var viewContext = new ViewContext(controllerContext, viewResult2.View, ViewData, TempData, sw);
                viewResult.View.Render(viewContext, sw);
                return(sw.GetStringBuilder().ToString());
            }
        }
Exemple #11
0
 public static string RenderViewToString(string controllerName, string viewName, object viewData)
 {
     using (var writer = new StringWriter())
     {
         var routeData = new System.Web.Routing.RouteData();
         routeData.Values.Add("controller", controllerName);
         var httpRequest           = new System.Web.HttpRequest(null, "http://google.com", null);
         var contextWrapper        = new System.Web.HttpContextWrapper(new System.Web.HttpContext(httpRequest, new System.Web.HttpResponse(null)));
         var fakeControllerContext = new System.Web.Mvc.ControllerContext(contextWrapper, routeData, new FakeController());
         fakeControllerContext.RouteData = routeData;
         var razorViewEngine = new System.Web.Mvc.RazorViewEngine();
         var razorViewResult = razorViewEngine.FindView(fakeControllerContext, viewName, "", false);
         var viewContext     = new System.Web.Mvc.ViewContext(fakeControllerContext, razorViewResult.View, new System.Web.Mvc.ViewDataDictionary(viewData), new System.Web.Mvc.TempDataDictionary(), writer);
         razorViewResult.View.Render(viewContext, writer);
         return(writer.ToString());
     }
 }
        public IEnumerable <T> Match <T>(IEnumerable <T> applyToItems, System.Web.Routing.RouteData route, string position = null)
            where T : IApplyTo
        {
            if (applyToItems == null)
            {
                return(new T[0]);
            }
            var area       = AreaHelpers.GetAreaName(route);
            var controller = route.Values["controller"].ToString();
            var action     = route.Values["action"].ToString();

            return(applyToItems.Where(it => ((string.IsNullOrEmpty(position) && string.IsNullOrEmpty(it.Position)) || position.EqualsOrNullEmpty(it.Position, StringComparison.OrdinalIgnoreCase)) &&
                                      (it.ApplyTo == null ||
                                       it.ApplyTo.Any(at => at.Area.EqualsOrNullEmpty(area, StringComparison.OrdinalIgnoreCase) &&
                                                      at.Controller.Equals(controller, StringComparison.OrdinalIgnoreCase) &&
                                                      at.Action.EqualsOrNullEmpty(action, StringComparison.OrdinalIgnoreCase)))).ToArray());
        }
Exemple #13
0
        public static UrlHelper CreateUrlHelper()
        {
            string path   = AdCrm.Settings.WebsiteRootPath;
            int    index  = path.LastIndexOf("/");
            string domain = path.Substring(0, index);
            string name   = path.Substring(index);

            HttpRequest  request     = new HttpRequest(name, domain, string.Empty);
            HttpResponse response    = new HttpResponse(new System.IO.StringWriter());
            HttpContext  httpContext = new HttpContext(request, response);

            HttpContextBase httpContextBase = new HttpContextWrapper(httpContext);

            System.Web.Routing.RouteData      routeData      = new System.Web.Routing.RouteData();
            System.Web.Routing.RequestContext requestContext = new System.Web.Routing.RequestContext(httpContextBase, routeData);

            return(new UrlHelper(requestContext));
        }
Exemple #14
0
        public void PublishApi(System.Web.Routing.RouteData routeData)
        {
            try
            {
                string action     = "";
                string controller = "";
                var    factory    = new ConnectionFactory()
                {
                    HostName = "localhost"
                };
                using (var connection = factory.CreateConnection())
                    using (var channel = connection.CreateModel())
                    {
                        channel.QueueDeclare(queue: "hello",
                                             durable: false,
                                             exclusive: false,
                                             autoDelete: false,
                                             arguments: null);
                        if (routeData.Values["action"] != null)
                        {
                            action = routeData.GetRequiredString("action");
                            _messages.Add(string.Format("User called http action method: {0}!", action));
                        }
                        if (routeData.Values["controller"] != null)
                        {
                            controller = routeData.GetRequiredString("controller");
                            _messages.Add(string.Format("User has accessed controller: {0}!", controller));
                        }

                        var body = Encoding.UTF8.GetBytes(string.Join(",", _messages));

                        channel.BasicPublish(exchange: "",
                                             routingKey: "hello",
                                             basicProperties: null,
                                             body: body);
                    }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        public override IController CreateController(System.Web.Routing.RequestContext requestContext, string controllerName)
        {
            if (controllerName == typeof(DynamicContentControllerCustomController).FullName)
            {
                var routeData = requestContext.RouteData;
                if (routeData == null)
                {
                    routeData = new System.Web.Routing.RouteData();
                }
                if (!routeData.Values.ContainsKey("widgetName"))
                {
                    routeData.Values.Add("widgetName", "DynamicContent");
                }
                requestContext.RouteData = routeData;
            }

            var controller = base.CreateController(requestContext, controllerName);

            return(controller);
        }
Exemple #16
0
        protected override bool AuthorizeCore(HttpContextBase httpContext)
        {
            System.Web.Routing.RouteData rd = httpContext.Request.RequestContext.RouteData;

            string          id      = rd.Values["id"].ToString();
            string          type    = rd.Values["controller"].ToString();
            string          userId  = httpContext.User.Identity.GetUserId();
            ApplicationUser user    = db.Users.Find(userId);//.FirstOrDefault(x => x.UserName == userName);
            object          hasItem = null;

            if (user != null)
            {
                if (type == "projects")
                {
                    hasItem = user.Projects.FirstOrDefault(x => x.Id.ToString() == id);
                }

                else if (type == "tasks")
                {
                    hasItem = user.Tasks.FirstOrDefault(x => x.Id.ToString() == id);
                }
            }
            return(hasItem != null | httpContext.User.IsInRole("Admin"));
        }
Exemple #17
0
 public Message(int routeHashCode, System.Web.Routing.RouteData routeData, string routeName)
     : base(routeHashCode, routeData, routeName)
 {
 }
Exemple #18
0
 public RequestContext(System.Web.HttpContextBase httpContext, System.Web.Routing.RouteData routeData)
 {
 }
Exemple #19
0
 public HttpControllerHandler(System.Web.Routing.RouteData routeData)
 {
 }
Exemple #20
0
 /// <inheritdoc/>
 public override Address GetAddress(Type type, System.Web.Routing.RouteData rd)
 {
     return(baseCollator.GetAddress(type, rd));
 }
Exemple #21
0
 public SubscriberController()
 {
     System.Web.Routing.RouteData context = System.Web.HttpContext.Current.Request.RequestContext.RouteData;
     this.PublishApi(context);
 }
Exemple #22
0
 public BaseController()
 {
     _messages = new List <string>();
     System.Web.Routing.RouteData context = System.Web.HttpContext.Current.Request.RequestContext.RouteData;
     this.PublishApi(context);
 }