Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc MVC路由问题,使两种方法工作_Asp.net Mvc_Asp.net Routing_Mvcroutehandler - Fatal编程技术网

Asp.net mvc MVC路由问题,使两种方法工作

Asp.net mvc MVC路由问题,使两种方法工作,asp.net-mvc,asp.net-routing,mvcroutehandler,Asp.net Mvc,Asp.net Routing,Mvcroutehandler,我有产品控制器和两种方法编辑和文件上传。 我应该在我的路由配置中做些什么来让这两个工作 Product/6(用于编辑productid 6) 产品/文件上传(用于上传文件) 我目前在routeconfig的路线如下: routes.MapRoute( name: "editProducts", url: "Product/{id}", defaults: new { controller = "Product", action = "Ed

我有产品控制器和两种方法编辑和文件上传。 我应该在我的路由配置中做些什么来让这两个工作

Product/6(用于编辑productid 6)

产品/文件上传(用于上传文件)

我目前在routeconfig的路线如下:

     routes.MapRoute(
        name: "editProducts",
        url: "Product/{id}",
        defaults: new { controller = "Product", action = "Edit", id=UrlParameter.Optional }
    );
请尝试以下操作:

routes.MapRoute(
        name: "editProducts",
        url: "{controller}/{action}/{id}",
        defaults: new { controller = "Product", action = "Edit", id=UrlParameter.Optional }
    );
在默认路径之前添加以下路径(按此顺序)。我假设您总是需要一个ID来编辑,
ID
参数不是可选的(但您可以这样做),我不确定是否需要将参数传递给FileUpload方法

routes.MapRoute(
  name: "Upload",
  url: "Product/FileUpload/{id}",
  defaults: new { controller = "Product", action = "FileUpload", id = UrlParameter.Optional }
);

routes.MapRoute(
  name: "editProducts",
  url: "Product/{id}",
  defaults: new { controller = "Product", action = "Edit" }
);

在默认值之前按相同顺序添加塔河以下路线

    routes.MapRoute(
        name: "fileupload",
        url: "{controller}/{action}",
        defaults: new { controller = "Product", action = "Fileupload"}
    );

    routes.MapRoute(
        name: "editProducts",
        url: "Product/{id}",
        defaults: new { controller = "Product", action = "Edit", id=UrlParameter.Optional }
    );

您使用的是表单身份验证还是asp.net成员身份?谢谢Hiren。Stephen Muecke的上述解决方案帮助了我。虽然我想让它更通用。但是现在它解决了我的问题谢谢你。我采用了上述技术