[英]How to remove “.aspx” from url in asp.net c#?
I want to remove ".aspx" from my web appliaction url.我想从我的网络应用程序 url 中删除“.aspx”。 also I have using webservices.
我也使用网络服务。
If I use below code web services is not working.如果我使用下面的代码 Web 服务不起作用。
Global.asax全球.asax
protected void Application_BeginRequest(object sender, EventArgs e)
{
String WebsiteURL = Request.Url.ToString();
String[] SplitedURL = WebsiteURL.Split('/');
String[] Temp = SplitedURL[SplitedURL.Length - 1].Split('.');
// This is for aspx page
if (!WebsiteURL.Contains(".aspx") && Temp.Length == 1)
{
if (!string.IsNullOrEmpty(Temp[0].Trim()))
Context.RewritePath(Temp[0] + ".aspx");
}
}
for Eg:-例如:-
Actual page is DEFAULT.aspx, but I want to show DEFAULT in address bar.实际页面是 DEFAULT.aspx,但我想在地址栏中显示 DEFAULT。 So I used Global.asax to remove (.aspx).
所以我使用 Global.asax 来删除 (.aspx)。 It's working fine.
它工作正常。 but Web service is not working(Default.asmx)
但 Web 服务不工作(Default.asmx)
There is a module that will handle this for you without having to directly manipulate the urls, as described here: http://www.hanselman.com/blog/IntroducingASPNETFriendlyUrlsCleanerURLsEasierRoutingAndMobileViewsForASPNETWebForms.aspx .有一个模块可以为您处理此问题,而无需直接操作 url,如下所述: http : //www.hanselman.com/blog/IntroducingASPNETFriendlyUrlsCleanerURLsEasierRoutingAndMobileViewsForASPNETWebForms.aspx 。
Install the package, Microsoft.AspNet.FriendlyUrls
.安装包
Microsoft.AspNet.FriendlyUrls
。
In your RouteConfig
, the extensionless urls are enabled using:在您的
RouteConfig
,使用以下方法启用无扩展名 url:
routes.EnableFriendlyUrls();
You can generate friendly urls using extension methods, for example, to generate /Foo/bar/34, you can use:您可以使用扩展方法生成友好的 url,例如生成 /Foo/bar/34,您可以使用:
<a href="<%: FriendlyUrl.Href("~/Foo", "bar", 34) %>">Click me</a>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.