mvc4.0怎么做伪静态 mvc4url 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 url: "{controller}/{action}/{id}.html", // 带有参数的 URL 可以用以下方法,刚好在项目中用到,是自己捉摸出来的。routes.MapRoute( name: "Default", // 路由名称 url: "htmlDir/{controller}/{action}/{pagename}.html", // 带有参数的 URL defaults: new { controller = "WebDefault", action = "Index", id = UrlParameter.Optional } // 参数默认值 );public ActionResult Index(string pagename) { string fileURL = string.Format("~/Content/pages/{0}.aspx", pagename); return RedirectPermanent(fileURL); } 这样肯定可以的,你注意你action中参数是不是定义成id了,参数要跟路由中的对应起来。 这样肯定可以的,你注意你action中参数是不是定义成id了,参数要跟路由中的对应起来。我已经在ID后面加好了HTML,但是貌似不行 帖子不要沉啊!我改了路由那请问!help/Article/ShowContent?ID=256这个怎么转变成help/Article/256.html ;这是我展示文章内容页的控制器方法: #region 展示文章内容 public ActionResult ShowContent() { int ArticleID = 0; try { ArticleID = Convert.ToInt32(Request.QueryString["ID"]); } catch (Exception) { ArticleID = 0; } LBArticleModel model = new LBArticleModel(); //启用防恶意刷新点击数 bool isUpdateHits = false; if (LBDbConfig.IsPreventRefresh()) { string key = "_IP_" + ArticleID + "_";//需用文章ID作键名,否则用户浏览其他文章就无法点击+1了 string ip = LBCommon.GetUserIp(); if (Session[key] == null) { Session[key] = ip; isUpdateHits = true; } else if (Session[key].ToString() != ip) { isUpdateHits = true; } } else { isUpdateHits = true; } if (isUpdateHits) { model.UpdateHits(ArticleID); } string[] seo = model.GetSeo(ArticleID); ViewData["Title"] = seo[0]; ViewData["MetaKeywords"] = seo[1]; ViewData["MetaDescription"] = seo[2]; //友情链接列表 ViewData["FriendLinkList"] = GetFriendLinkList(); int ClassID = model.GetClassID(ArticleID); ViewData["classid"] = ClassID; string view = (new LBArticleClassModel()).GetContentView(ClassID); return View(view); } #endregion 你多研究下路由,url: "{controller}/{action}/{id}.html", // 带有参数的 URL ,这个方法是绝对正确的。 ArticleID = Convert.ToInt32(Request.QueryString["ID"]); MVC里面提取路由参数是这样的嘛? 在Global中URL重写一下就好了。 路由心成{controller}/{action}/{id}.htmlaction方法public ActionResult ShowContent(int id){...} 你的Action都没有参数,肯定匹配不了。id参数需要你在Action中体现出来。 毕业设计求助,价格好商量,用mvc做的物流管理,网上下的别人的,界面什么的都做好了,就是数据交换的地方有问题。QQ:18696766524 高分求如何用ASP.NET对word实现水印效果! textbox 的数据输入限制问题 一个js题目 静态页面发送邮件! 离线输入数据后提交 通过浏览器可以直接浏览到web.config文件,请问有谁知道原因吗? ajax控件的选项卡传值问题。。。 如果在设计视图看不见DataList控件, 怎么为它的非默认事件创建事件处理程序? DropDownList绑定出错 我公司聘asp.net 兼职程序员,可按项目承包,要求有OA开发经验,在北京。 asp.net 多用户流水号问题 Report Builder3.0报表部署到Azure服务器时如何将“区域设置”改为zh-TW
routes.MapRoute(
name: "Default", // 路由名称
url: "htmlDir/{controller}/{action}/{pagename}.html", // 带有参数的 URL
defaults: new { controller = "WebDefault", action = "Index", id = UrlParameter.Optional } // 参数默认值
);public ActionResult Index(string pagename)
{
string fileURL = string.Format("~/Content/pages/{0}.aspx", pagename);
return RedirectPermanent(fileURL);
}
这样肯定可以的,你注意你action中参数是不是定义成id了,参数要跟路由中的对应起来。
这样肯定可以的,你注意你action中参数是不是定义成id了,参数要跟路由中的对应起来。我已经在ID后面加好了HTML,但是貌似不行
public ActionResult ShowContent()
{
int ArticleID = 0;
try
{
ArticleID = Convert.ToInt32(Request.QueryString["ID"]);
}
catch (Exception)
{
ArticleID = 0;
}
LBArticleModel model = new LBArticleModel();
//启用防恶意刷新点击数
bool isUpdateHits = false;
if (LBDbConfig.IsPreventRefresh())
{
string key = "_IP_" + ArticleID + "_";//需用文章ID作键名,否则用户浏览其他文章就无法点击+1了
string ip = LBCommon.GetUserIp();
if (Session[key] == null)
{
Session[key] = ip;
isUpdateHits = true;
}
else if (Session[key].ToString() != ip)
{
isUpdateHits = true;
}
}
else
{
isUpdateHits = true;
}
if (isUpdateHits)
{
model.UpdateHits(ArticleID);
}
string[] seo = model.GetSeo(ArticleID);
ViewData["Title"] = seo[0];
ViewData["MetaKeywords"] = seo[1];
ViewData["MetaDescription"] = seo[2];
//友情链接列表
ViewData["FriendLinkList"] = GetFriendLinkList();
int ClassID = model.GetClassID(ArticleID);
ViewData["classid"] = ClassID;
string view = (new LBArticleClassModel()).GetContentView(ClassID);
return View(view);
}
#endregion
ArticleID = Convert.ToInt32(Request.QueryString["ID"]); MVC里面提取路由参数是这样的嘛?
{controller}/{action}/{id}.htmlaction方法
public ActionResult ShowContent(int id)
{
...
}