Раньше делал когда сервер маршрутизации. У меня проблема.
Нет проблем, если http://myweb.com/news/22*.aspx*
Но
Если http://myweb.com/news/22 проблема: 404 - Файл или каталог не найдены.
в локальных нет проблем, но ошибка сервера
Даже когда .HTML или .jsp я использую
В чем проблема?
id сделать это:
global.asax
void Application_Start(object sender, EventArgs e)
{
RegisterRoutes(RouteTable.Routes);
}
public static void RegisterRoutes(RouteCollection routes)
{
routes.Add("News", new Route("News/{ID}",new CustomRouteHandler("~/News/News.aspx")));
}
CustomRouteHandler.cs класс:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.Routing;
using System.Web.Compilation;
public class CustomRouteHandler : IRouteHandler
{
public CustomRouteHandler(string virtualPath)
{
this.VirtualPath = virtualPath;
}
public CustomRouteHandler()
{
}
public string VirtualPath { get; private set; }
public IHttpHandler GetHttpHandler(RequestContext
requestContext)
{
var page = BuildManager.CreateInstanceFromVirtualPath
(VirtualPath, typeof(Page)) as IHttpHandler;
return page;
}
}
web.config:
<add assembly="System.Web.Routing, Version=3.5.0.0,Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add name="UrlRoutingModule" type="System.Web.Routing.UrlRoutingModule,System.Web.Routing, Version=3.5.0.0,Culture=neutral,PublicKeyToken=31BF3856AD364E35" />
<add name="UrlRoutingHandler" preCondition="integratedMode" verb="*" path="UrlRouting.axd" type="System.Web.HttpForbiddenHandler,System.Web, Version=2.0.0.0, Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a" />
ссылка:
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="~/news/22" Text="News"></asp:HyperLink>