我有一个QueryString名为'flagEdit',我想在获取它的值后将其删除.但是,当我尝试使用它删除它
Request.QueryString.Clear();
Run Code Online (Sandbox Code Playgroud)
要么
Request.QueryString.Remove("editFlag");
Run Code Online (Sandbox Code Playgroud)
发生此错误 -
System.NotSupportedException:Collection是只读的.
所以,我想知道如何在获取它的值后删除查询字符串
我正在尝试创建像url一样的stackoverflow.
我以下示例工作正常.但是,如果我删除控制器,那么它会出错.
http://localhost:12719/Thread/Thread/500/slug-url-text
Run Code Online (Sandbox Code Playgroud)
注意第一个Thread是控制器,第二个是动作.
如何使上面的URL看起来如下,从网址中排除控制器名称?
http://localhost:12719/Thread/500/slug-url-text
Run Code Online (Sandbox Code Playgroud)
我的路线
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute("Default", // Route name
"{controller}/{action}/{id}/{ignoreThisBit}",
new
{
controller = "Home",
action = "Index",
id = "",
ignoreThisBit = ""
}); // Parameter defaults )
}
}
Run Code Online (Sandbox Code Playgroud)
线程控制器
public class ThreadController : Controller
{
//
// GET: /Thread/
public ActionResult Index()
{
string s = URLFriendly("slug-url-text");
string url = "Thread/" + 500 + "/" + s;
return RedirectPermanent(url);
}
public ActionResult Thread(int id, …Run Code Online (Sandbox Code Playgroud)