How to handle asp.net mvc routing along with asp.net webform routing. I have merged my mvc app into my existing web application. In my web application i have implement routing as below:
routes.Add("View Product Details", new Route("Product/{City}/{Manufacturer}/{Name}/{ProductID}/{*ProductType}"));
Similarly i have implemented routing in mvc as below
I have an ASP.NET MVC app and I have a WebForm page I built in the MVC due to a tutorial on how to do something I needed to do, but it was all in WebForm style. Ive tried to figure out how to do the same thing in MVC format but cant figure it out. So I was needing to figure out how to use this page in my MVC app. But when I try to go to the page, it gives me the error "Page cannot be derived from ViewMasterPage unless Page derives from ViewPage." So I had to make a new standard MasterPage also.
The situation is this. I have a search bar located in the MVC ViewMasterPage thats on every page that is derived from it. Once a user submits info in the search bar, it calls the WebForm Search.aspx page and displays the results on the Search.aspx page. I want the URL to be like "http:///search//. The Search.aspx page is located in the root of the project. How would I get the results Im looking for?
I am using asp.net 4 routing and im enjoying it so far. I have one problem only with my javascript files. I am using a masterpage to add my css and javascript. The css is working fine however the javascript is not. My links from my masterpage look like this
Thus far working with asp.net webforms was very easy .... But never implemented URL Routing in webforms... I know asp.net MVC Handles URL Routing pretty well... How to get started with URL Routing in an asp.net webform application? For EX: [URL] i want it to be like [URL] Any good article to start with URL Routing asp.net 3.5
I've got webform routing setup on my asp.net webforms 3.5sp1 project. I would like to have the files for the site in a directory called content including the home page as I would like to run multiple sites using the same system. In MVC there is a blank default page and the home page is in a folder called home. I can't seem to replicate this behaviour using web form routing but would like to. The blank page is always hit first. the route handler is hit second - it recognises that the request is for the home page and sets up the routing page but is not used. the route handler code is simple:
public string VirtualPath { get; private set; } public IHttpHandler GetHttpHandler(RequestContext requestContext) { string file = requestContext.RouteData.GetRequiredString("File"); string id = requestContext.RouteData.GetRequiredString("Id"); string queryString = "?menuid=" + id; VirtualPath = "~/" + file; HttpContext.Current.RewritePath( string.Concat( VirtualPath, queryString)); var page = BuildManager.CreateInstanceFromVirtualPath (VirtualPath, typeof(Page)) as IHttpHandler; return page; } Is there anyway I can do this? Update Here is my global.asax route code: public static void RegisterRoutes(RouteCollection routes) { Domain.RepositoryFactory repo = new RepositoryFactory(); foreach (var x in repo.MenuRepository.GetAllEnabledGetMenus()) { if (string.IsNullOrEmpty(x.Url)) { //add default System.Web.Routing.RouteTable.Routes.Add( new Route("Default.aspx", new RouteValueDictionary(new { File = x.FileName, Id = x.Id.ToString() }), new CoreRouteHandler())); } else { string url = x.Url; if(x.Url.StartsWith("/")) { url = url.Remove(0, 1); } System.Web.Routing.RouteTable.Routes.Add( new System.Web.Routing.Route(url, new RouteValueDictionary(new {File = x.FileName, Id = x.Id.ToString()}), new CoreRouteHandler())); } } }
Is it possible to have one asp.net web application that handles requests from two domains via asp.net routing? I need one TLD domain per language version pointing to the same app.
How to set up a route that recognize, if the request is coming from domain1.de or domain2.com? How to configure the domains DNS for this to work?
I've already implemented URL routing in my app but there are cases where I may or may not get a paramter. In particular, I'm trying to come up with a good way to handle multi-language support. For example, if my regular URL is /SomeCategory/Friendly-Topic-URL, I want to have an optional language selector at the end but I'd like to be optional. So, if I get /SomeCategory/Friendly-Topic-URL/es, that should bring up the topic in Spanish but if get nothing, that should bring up English.
ASP.NET 3.5 SP1 with Web Forms Routing thru Global.asax (System.Web.Routing and RegisterRoutes)IIS 7
Everything is working fine in my local machine, but it gives the following error in my hosting environment:
Could not load file or assembly 'System.Web.Routing, Version=3.5.0.0, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.
I did everything inside my web.config file mentioned in the following link:
I am able to route my urls to an existing page. Here is how our scenario is currently working:
On Default.aspx, we have several links that link to pdf files on the server. The filenames of these files change dynamically which is why we need the url routing. When the user clicks on of the urls, the link is routed to the getFile.aspx page that has logic in it to determine which file to open.
Is there a way to have the getFile.aspx page to open in the same window as the default.aspx page?
Otherwise, I need for the getFile.aspx page to close after the intended processing is complete, and I've not been able to close it without getting the close window dialog box. I figure if it opens in the same browser window, I can redirect back to the default.aspx page when processing is finished.
I have a Web application where i have added a reference to a RESTful WCF. I got the WCF url Routing to work in my webapplication by adding Inherits="RestService.Global" to the Web applications Global.asax.
But then i tried to create url Routing for the Web application and it does not work with the Inherits="RestService.Global" in the Global.asax. If i take it away it works fine. Is there a correct way to do this.
I'm trying to create my own CMS and I've gotten a little bit stuck at the stage of URL routing.
I want clean URLs without extensions and I'd like to be able to create and modify them in a web based interface without any messing around with IIS or actual files.
I've seen how to create a static route, but for that I need to go into my Global.asax file and manually add it.I would like to have all of these routes stored in a database so that I can easily modify them later.
Does anyone know how this can be achieved?
Just for extra information, I will be attempting to create a feature so that if a path exists, but is later changed, a 301 redirect is created to the new URL, is this also possible? (My first problem is the main issue, but thought I might ask this as well just in case it makes a difference)
I consider the following an error, and not a feature:
When posting a request, any parameters are held in the HttpContext.Request.Form as key/value pairs. This is perfectly fine for the recipient of the request. Unfortunately, however, further down the chain these values still exist and take precedent in binding over new parameters created during processing.
This is obvious in the RenderAction scenario. If a new parameter is created in a view and passed through RenderAction, if the parameter has the same name as one of the initial request parameters (or a form field for that matter), then MVC Binding will bind the initial request form value to the Action being called, and not the new parameter being defined in the RenderAction call. What's even more frustrating, is there is no easy way to override the initial form values.
It really does not make sense that a value defined in one context, should live throughout the entire processing context... at least without the developer being able to determine it should remain. At a minimum, any new parameter defined in the process with the same name should either a) be received as a parameter and not a form value; or b) override the form value.
I'm currently using URL Rewriting, but I recently stumbled upon this link on Rerouting, and it looks like it's quite simple yet powerful, and easier to implement than URL Rewriting, a "downside" probably is that configurations are not sitting on a web.config file but rather on the code itself, but I was wondering about the differences, and advantages of using one over the other. Having read some resources about routing, I can see the differences, and now I reformulate my question:
Is it worth it to move from URL Rewriting to Routing? Are there any IIS-specific configurations that should be made? Is it recommended to use it on a ASP.NET WebForms Application, or is it oriented to other kind of projects?
I've been doing research for a few days now and I know that I want to do ASP Routing over Rewriting. I found this great article:http://www.4guysfromrolla.com/articles/051309-1.aspx and also
http://blogs.msdn.com/mikeormond/archive/2008/05/14/using-asp-net-routing-independent-of-mvc.aspx. I write in VB.NET, these two articles are written in C#. I converted the code, but I must be missing something because my routing doesn't work correctly.
I was able to download the code from 4guys and it works fine. I found some differences between my results and theirs when I stepped through error checking. I added the 3 lines to the web.config file:
Theirs shows the correct value of whatever you click on The requestContext variable, > HttpContext > System.Web.HttpContextWrapper > Request > System.Web.HttpRequestWrapper > PhysicalPath = "C:UsersNvXDesktopMyWebsiteWebResource.axd"
Theirs shows PhysicalPath = "C:\Users\NvX\Desktop\RoutingDemo\Products\Pavlova" (Pavlova was the link I clicked on)
When I query the database using LINQ, it never finds WebResource.axd and redirects to the NotFound.aspx page. When I load Default.aspx, I want it to load that page. If I type /tjnevis (which is a username in the database), I want it to go to a page where I can put together a profile, pulling the information for that username, which I can figure out. It's the routing that I'm having trouble with. If I could get it to work correctly, I think the PhysicalPath should look similar to the 4guys example I downloaded.
I am using MVC 2.0 to create my application,my problem i s related to the routing. Actually in my application each user have required seperate subdomain,like
www.example.com/user1/ ,www.example.com/user2/ ...etc.the default domain is www.example.com.So how can i make it possible with routing in mvc.
i have tried like this, routes.Add(new Route("{id}", new RouteValueDictionary(new { controller = "User", action = "login", id = " " }), new MvcRouteHandler())); var defaults = new RouteValueDictionary( new { controller = "Home", action = "Index", id = UrlParameter.Optional } ); routes.Add(new Route("{controller}/{action}/{id}", defaults, new MvcRouteHandler()));
But the problem is that it take deafult (www.example.com) directly to user login page.I want the default page as Home/index and when www.example.com/user1/ it will go to user login page.
I'm working with a client that wants the URLs in our web application to be in French. I'm an English developer and we also have English clients. This is an interesting problem is there something int the ASP.NET MVC Framework that would enable me to do this?
Here's the scenario. The route...
Specific EXAMPLE English URL www.stackoverflow.com/questions/ask
So in MVC my Area, Controller and Actions all need to have both English and French translations.Obviously maintainability would be a HUGE issue if I were to go and hardcode all my Controllers, Views and Action names to French. Is there anyway to localize the route that is presented in the browser without doing this? Keeping in mind there are lots of different routes in the application. A couple Areas each with a handful of Controller each with many Actions?
Note this message is also on SO: http://stackoverflow.com/questions/3935768/is-it-possible-to-localize-a-url-routing-in-asp-net-mvc