I have a site (ex. test.com) which I am using MVC. I have created areas for my site, where each area represents a state. What I would like to do is specify some place in the web.config to when I deploy, I set a value and then the default route when I go to test.com would auto route to: test.com/california or test.com/oregon based on that value.
I use in my application 2 areas: Website and Admin. I will put all controllers and views in these areas, not in root application. So I would like to have default route 'Website/Mycontroller/Myaction', not 'Mycontroller/Myaction'. I have changed Global.asax.cs:
[Code]....
to: [Code]....
but now my application doesn't work when I open website http://xxxxxx.pl.
I have the area Blog with controllers (Post and Blog) i want that when the user acess my site without one area, it should redirect him to the Blog area inthe blog controller and in the index action if i use:
PHP Code: Route myroute1 = new Route("{controller}/{action}/{slug}", new MyRouteHandler()); Route myroute2 = new Route("{controller}/{action}", new MyRouteHandler()); Route myroute3 = new Route("{controller}", new MyRouteHandler()); Routes.Add(myroute1); Routes.Add(myroute2); Routes.Add(myroute3); [code]...
I have a Search Controller with an action method as follows:
public ActionResult Location(LocationSearchInputModel input) { // Get Results and pass cacheId in TempData return RedirectToAction("results"); } public ActionResult Results() { // Get cacheId from TempData and build Model return View(model); }
The call to RedirectToAction fails with the following error message:
Message: No route in the route table matches the supplied values.
My default Route is set up as follows:
routes.MapRoute(null, "{controller}.mvc/{action}/{id}/", new { controller = "Home", action = "Index", id = UrlParameter.Optional });
As the id Parameter in the default Route is optional shouldn't RedirectToAction("results") execute the SearchController's Results action?
I have an application that I run in several places (demo, production, local, etc.) that all use different virtual directories for the placement of the MVC application.
I use StructureMap in this application, so I am overriding the ControllerFactory to use StructureMap to build controllers (when the passed controller instance is not null).
My problem is that the controller instance being passed to the controller factory IS null, which is fine if said route didn't exist, but it does... specifically, it should be my DEFAULT ROOT route.
Basically if I host the app at [URL], everything works fine except when I have a '/' on the end of the URL (meaning,[URL]... the latter works fine, while the former gives me the error). It looks like when that slash is there, the routing engine is deciding that it should be looking for a controller named MvcController, which doesn't exist, and which then passes the null controller instance to the ControllerFactory, resulting in the following error:
The controller for path '/Mvc/' could not be found or it does not implement IController. My Default route is the standard default route. Removing all other routes has no effect. My default controller is HomeController.
Global.asax route values routes.MapRoute( "Default", // Route name "{controller}/{action}/{id}", // URL with parameters new { controller = "Home", action = "Index", id = UrlParameter.Optional, filterDate = DateTime.Now.AddDays(-1), filterLevel = "INFO" } // Parameter defaults );
Here's my actionlink
@Html.ActionLink(item.MachineName, "Machine", new { id = item.MachineName, filterLevel = "hello" }, null)
When the filterlevel is specified in the actionlink, it generates a url like this: [URL] Which is the same page as I am currently on. If I change the actionlink to use a property other than one that has a default value in the route table (yes, if I use filterDate it messes up too), it generates a link like this:..............
I used ModalPopup Control on this link, [URL]How should I write the code that to close pop up by click the area outside the pop up panel?I use AjaxControlToolkit-Framework3.5SP1
Is there a way to specify a default area for any content specified in a master page?
I have a global master page and a bunch of user controls (.ascx) with action links defined without regard for 'areas' - is there a way to specify the default area to use when rendering action links and the like?
The problem occurs when navigating to an area; all the unspecified master page links do not link back to the default area (in my case the root). I.e.,Html.ActionLink("Home", "Index", "Home") renders as "/area/home/index" rather than "/home/index". I'd like this to work for all the links defined in the master page file without needing to specifyHtml.ActionLink("Home", "Index", "Home"new { area = "" }
Was looking at asp.net mvc complex routing for tree path as an example of how to define a custom route handler for my MVC app. Essentially, I want to give the end user ultimate flexibility in defining the URL for any given page, so I provide them with a field in the interface to specify their own custom URL.
My custom route handler is basically a wild-card handler. It will do a lookup and if it finds a match, map it accordingly. However, if no match is found, I want it to fall back and find the next rule that matches in the global.asax. Is that possible? Or do I essentially need to code the mappings that used to exist in my global.asax into my custom route handler?
I am trying to secure very mixed content that is located in an ASP.NET directory. For purposes of this question, it can be ~/MyApp/.
I want all of the content in the directory and its subdirectories restricted to authenticated users. The default.aspx page, though, should be accessible to everyone. This is the web.config in that directory:
[Code]....
Now if you are an unauthenticated user, everything works fine if you request [code]....
The problem occurs in that visitors do not always request "Default.aspx". We have a default document configured so that they get Default.aspx even if they just request "/MyApp". An authenticated user works fine, but an unauthenticated user is directed to the login page.
Now I know that essentially this happens because even though the request for "/MyApp/" will actually end up serving up "/MyApp/Default.aspx", the security system is only checking for "/MyApp/" since that is what I requested. That is then getting the default security for the directory.
How can you configure an exception to allow access when no particular file is requested in the directory??
Is there some dependency between DefaultDocumentModule and UrlAuthorizationModule? In this environment, the UrlAuthorizationModule has been removed and re-added in order to make sure it fires for non-managed requests. I would not expect that to change the order of execution, though, since UrlAuthorizationModule usually goes after DefaultDocument.
A workaround could be to set up the opposite security with the directory being open, and then trying to secure individual files. Because of the (changing) number of files, and extensions, etc, and the fact that you cannot use wildcards in a <location>, this is not really a workable solution for me.
the default ASP.NET Forms Authentication cookie sets it's name as ".ASPXAUTH". Notice the first character is a period? Is there a particular reason for this? Like, does this have an impact on domain names or subdomains for the target domain.
Or is it purely some random thing an MS dev person came up with (maybe to help out the ordering of the cookies, when they were debugging or something .. as text with periods prolly get listed before other strings)?
My routes work in the Global.asax, but I created an Area called Dashboard and while it works with the default route, it doesn't when I implement the T4MVC route.
Here's my Dashboard Area Registration class:
[Code]....
If I view this in a browser with the above settings, any Html.ActionLinks render as empty strings, no routing at all.Here's the rendered HTML from the route.
I've an Admin area and I want only Admins to enter the area. I considered adding the Authorized attribute to every controller in the Admin area. Isn't there an elegant solution or is this feature not there in the framework itself?
EDIT:
I should to have mentioned this before. I'm using a custom AuthorizedAttribute derived from AuthorizeAttribute.
How can I consume a default WCF web service, right out of the box from VS 2010 in a default ASP.NET MVC project right out of the box from VS 2010?
I know how to start up the WCF web service and add the service reference in the ASP.NET MVC project. So what I want to know is exactly what code I shall write in the ASP.NET MVC project?
On a pager I use on my MVC site I create the page links as follows:
[Code]....
On a MVC 2 web site I have an area named CMS.For example, on "cms/article/list" the pager works fine.However, on my root views, for example in "article/index" the page 1 link become:[URL]On my Global.Asax I have the following:
[Code]....
I have been going around with this and I can't find a way to solve this problem.
Sure this is something obvious, but I can't see it.I have an area in my project, UserAdministration. Whenever I call anything in the area I get a 404 error.The AreaRegistration class contains:
[Code]....
The AdminController contains a method for Index.RouteDebug shows the route is to the correct controller (Admin) and action (Index).
I have moved AccountController to area named 'Backend', but when I adding [Authorize] attribute to any action and then come to this website, it redirects me to error page:
I have a problem, that is in my asp.net page I am having a master page there are many derived pages are there. in the master page I kept login control and validation and signin done in the master page itself, also I am having a create user page, if I execute create user page, unable to login from this page. because create user text box validating as well in the same page if I click create user button its validating login. how to avoid this? a button & text box & validation should be respective area only.
I've got a piece of code that I want to run one time when my website is first loaded.It is basically a static initialization of another module.Is there some event I can hook into that runs when the site is first served to a client?It doesn't even need to be per session, just on first load to any client.