VS 2010 Web Forms Routing Error 404 With Dot In Folder Name?
Mar 14, 2014
I have a site that I setup and users can create dynamic links and part of the link is their company name. Well just found out that if the name of the company has a dot (. or period) then the routing doesn't like that. After searching see that you can't put a dot in the folder name and wonder now that all these urls are out there is there a good way to handle so the user doesn't get the 404 page? Someone said to add relaxedUrlToFileSystemMapping="true" but did this and still throws to 404.
------------------------------
System info
------------------------------
Microsoft Windows Server 2003 R2
Standard x64 Editions SP2
site using ASP.NET 4.0.30319 framework
Using web forms.
Code:
<%@ Application Language="VB" %>
<%@ Import Namespace="System.Web.Routing" %>
<%@ Import Namespace="System.Security.Principal" %>
Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
' Code that runs on application startup
RegisterRoutes(RouteTable.Routes)
End Sub
Sub RegisterRoutes(ByVal routes As RouteCollection)
[code]...
This works:
[URL]
This does not work because of . (dot) in folder name:
I defined a default error page in the ASP.Net Web Site Administration tool. The page exists in root directory. I also confirmed that it pointed to my frmErrorPage.aspx by looking in my Web.config file
Running my site locally from within visual studio, I tried to surf to a non existent page. This threw an error as it is suppose to, but did not pull up my custom error page. I get
Code: Server Error in '/' Application. The resource cannot be found. Description: HTTP 404. ...
I have an asp.net application that I wrote that uses query parameters and I'd like to use routing to use a different URL. I'm missing something, though, after reading through numerous walkthroughs.URL that I'm now using with query parameters: http://mywebsite.com/app1/default.aspx?d=dept&c=category&p=page.htm I would like to use routing to have a URL of http://mywebsite.com/app1/dept/category/page.htm and have the same code behind work. Currently it doesn't work at all. Not sure what else I may have to do.
So, i am running SQL Server 2008 R2 Express and VWD 2010 Express on Windows 7. I am logged in as admin on my machine. I have created a new web app project (VB Linq to SQL) and I have attempted to add an existing .mdf to my project's App_Data folder. I right-click, choose "add existing...", navigate to the .mdf file in the C:Program FilesMicrosoft SQL ServerMSSQL10.SQLEXPRESSMSSQLDATA folder, and then i get an "Access is denied" error box with no further details.
I am trying to implement Url routing in asp.net 4.0. I just a created a small test application. I am trying to browse the pages kept inside the folder. It works fine when i am running in Visual studio..but when i hosted the application in IIS7 then it showed an error.
HTTP Error 404.0 - Not Found
The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.
I'm currently working on a project where I need to segregate some of the views within a controller I have a little better.I want to do something like:
{controller}/{action1}/{action2}/{id}
So let's just say
/Clients/Jobs/Edit/e124929
So I guess I'm looking to have "sub-actions" of my actions?It's achievable with via routing. How should I set the route up for this, and how should I create the routine in my controller to handle the "sub-actions"?
I am using URL routing in asp.net application (not MVC) . I have Admin folder in my aaplication which has admin related aspx pages with seperate web.config. I have seperate login form for admin users which is placed in admin folder itself. My issue is whenever I hit [URL] (which I want to go to login form for admin)- it tries to authenticate and goes to login url mentioned in web.config of root folder.
Note: Admin folder has anonymous access in root config file. Also I have set default document in config of Admin folder. I have added following line in global.asax so that routing doesnt work for files in admin folder;
routes.Add(new Route("admin/{*resource}", new StopRoutingHandler()));
I am really confused what is the issue? What I am missing?
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())); } } }
I am using Visual Studio 2010 and ASP.NET 4.0 to build a WebForms project that uses the new routing features in System.Web.Routing. When I build my solution and run it from within VS.NET's debugging environment only routes with RouteUrl's that include a ".aspx" extension are being properly routed to the PhysicalFile. It appears requests made to other URLs are not being "detected" by the routing engine for processing. In the case below, "Scenario1" shows a 404 and "Scenario2" works properly.
When I run my website on local server asp.net routing works very well, but when I deploy it on a remote server ( asp 4.0 integrated pipeline ) it always returns with 404 error.
My url route is very simple, a stored procedure gets image's id and then displays it.
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 was trying to create a Dynamic Data Website using VS 2010 RC. An attempt to create an App_Code folder where I would put a LINQ to SQL class, failed. When I selected 'Add ASP.NET Folder' to add the folder, I had options to create only the following folders:
I am using a fileloader to load a photo into a folder,but, I am having difficulty getting the photo to appear in the imagebox on the form. This is the code I'm using
Protected Sub btnup_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnup.Click, btnup.Click
If FileUpload1.HasFile Then Try FileUpload1.SaveAs("C:inetpubwwwrootwebapplication1images" & _ FileUpload1.FileName) Label1.Text = "File name: " & _
[Code]..
For some reason I am being told that the image part of image.file is error BC30561: 'Image' is ambiguous, imported from the namespaces or types 'System.Web.UI.WebControls, System.Drawing'.
i have a working mvc web site (MVC 2)and im tring to add routingso i changed the index this waypublic ActionResult Index(string id)and call to the same url with this addition /1i receive 404 (and try to redirect to defualt.aspx )i have tried few changes on the web.config
My client is moving from a linux to a windows shared server that uses the following:
Plesk Panel 9.5 PHP Version 5.2.13 ASP.NET framwork version: 2.0.50727.0
They currently are using .htaccess in several folders that make the user have separate credentials that relate to each folder.
Is there a way to do this on the new location using web.config? I tried using .htaccess but doesn't seem to work. I am able to get the .aspx files in a folder so if accessed and not logged in it goes to a login page.
If I have a bunch of .html pages in a folder, can I configure web.config so if someone goes to one of the .html pages direct it asks for credentials?
I have a question regarding routing and an issue that I am currently having in my application. I have an action, providers/List/, which accepts two parameters, a zipCode and a page value for paging results. I have defined this route as follows in my global.asax, /providers/{zipCode}/{page}
I have created another action in this controller, Dashboard, which does not expect any parameters, so I am assuming that the route would ultimately be /providers/dashboard, if I am not mistaken. What is happening is that for some reason I am getting a routing error regarding zipCode not being a non-nullable type. It makes me think that the first action's route is what is getting hit instead of going to the dashboard action. I am sure that it has something to do with the route entry that I have made in my global.asax file.
at vs2008 i could set App_Code folder, but at vs2010 i can not do it, that's why i put my dataset's and class' to App_Data folder. Either I do not know even App_Data folder is secure?
I've searched but not found much that helps, could be using wrong search terms.Anyway, currently using Visual Studio 2005 and VB, but just got Visual Studio 2010 and trying to use C# and am having problems using classes, I think I'm missing something simple here.
In both 2005 & 2010 I create a new website and a Default.aspx, in 2005 using VB, C# in 2010.
Right-click the project -> Add New Item -> Class, and leave it as Class1.vb/Class1.cs
Both 2005 & 2010 prompt to place it in the App_Code folder, so choose yes.
Here are the class files, I've not changed anything apart from create a very simple function:
Class1.vb code: [Code]....
Class1.cs code: [Code]....
In my VB project Default.aspx.vb: [Code]....
No errors, and debugging shows that a = "hello"
My Default.aspx.cs: [Code]....
This gives an error:Error 1 The name 'tester' does not exist in the current context D:Visual Studio 2010WebSite11Default.aspx.cs
How do I reference the tester function within Class1 in my C# project?
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 have a problem with my site, and I'm using .net 4, web form routing
I have this route ,routes.MapPageRoute("JobPreview", "jobs/{jobId}/{pg}/{Position}", "~/default.aspx")
so, this page is working fine http://www.jobsagents.com/jobs/24651/1/automation-qa-engineer
If we remove the last segment of this url, it should be redirected to the custom 404 not found page, but in the deployment server it redirects to the default IIS error page for 404 errors
http://www.jobsagents.com/jobs/24651/1/, on my local machine it's ok, and shows my custom error page.
If we remove the last three segments of the url http://www.jobsagents.com/jobs it works fine on the deployment server.
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.