标签: routeconfig

控制器映射中的ASP.NET MVC枚举参数

ASP.NET MVC为控制器方法提供了简单的模板,例如Details,可以有类似的东西:

public ActionResult Details(int id)
{
    // do something
}
Run Code Online (Sandbox Code Playgroud)

这可以通过以下方式访问: http://localhost:port/Controller/Details/id

我想要做的是提供不同的类型,如:

public enum MyEnum
{
    All,
    Pending,
    Complete
}
Run Code Online (Sandbox Code Playgroud)

然后我设置我的控制器方法,如:

public ActionResult MyMethod(MyEnum myEnum = MyEnum.Pending)
{
    // do something
}
Run Code Online (Sandbox Code Playgroud)

这适用于:http://localhost:port/Controller/MyMethod/因为它使用默认参数.

要指定一个不同的参数,我必须做http://localhost:port/Controller/MyMethod?myEnum=All,这是有效的.

我想知道,我可以做http://localhost:port/Controller/MyMethod/All而不是使用?myEnum=All吗?

当试图那样做,我得到一个404例外,这是可以理解,但为什么没有出现这种情况的idDetails

我可以更改MapRoute当前的内容:url: "{controller}/{action}/{id}"允许我使用自己的类型实现它吗?

到目前为止我尝试过的:

我只希望这个路线执行我的一个方案,例如http://localhost:port/Controller/MyMethod/{ViewType},我试过这个但它似乎没有做任何事情:

routes.MapRoute(
    "MyRoute",
    "MyController/Index/{MyEnum}",
    new { controller = "MyController", action = "Pending" }
);
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc routeconfig

6
推荐指数
1
解决办法
6908
查看次数

初始化前从 REST 服务的角度加载路由

我正在研究 Angular 8 从 REST 服务动态创建路由的可能性。这个想法是用户可以通过在网页上路由来创建应该可以访问的页面。

我已经看到了动态添加路由的选项,但是我希望在应用程序的其余部分之前加载路由,以便当用户访问时:'website/generatedPage' 路由在应用程序完全加载之前就位。

在应用程序继续路由选项之前,如何确保来自 REST 服务的路由就位?

以下代码将路由添加到后期:

    constructor(
    private sitemapService: SitemapService,
    private router: Router
) {
    this.sitemapService.getSiteMap().then(result => {
        result.forEach(sitemapItem => {
            this.router.config.push({ path: sitemapItem.pageName, component: PageComponent });
        });
    });
}
Run Code Online (Sandbox Code Playgroud)

使用此代码,您可以在加载应用程序时导航到该页面,但是,当您直接请求路由时,它尚未加载。

先感谢您!

rest routing routeconfig angular

5
推荐指数
1
解决办法
1382
查看次数

angular2 2.0.0-rc.1 RouteConfig装饰器似乎已经消失了......?

@RouteConfig似乎从angular2 2.0.0 RC.1消失,@RouteConfig是在@角/路由器过时包,同上上记录了网站上的API,

那么现在定义路线的正确方法是什么?

routeconfig angular

4
推荐指数
1
解决办法
1599
查看次数

使用正则表达式获取angular2中路径的路径值

我想为angular2应用程序配置路由.我的网址必须是这样的:

HTTP:// DOMAIN_NAME/constant_value/VARIABLE_VALUE/constant_value

网址可以是以下示例:

http://localhost/myhouse/floor1/mirror

http://localhost/myhouse/floor1/room1/mirror

http://localhost/myhouse/floor1/room1/bathroom/mirror

这里的路线/ myhouse/ mirror是不变的.但中间部分可以是/ floor1/ floor2 / something/something/....

如何在路由模块中为其定义路由.

const routes: Routes = [
    {
        path: 'myhouse',
        children: [
            {
                path: ..., //here how do i configure it
                children: [
                    {
                        path: '/mirror',
                        component: MirrorComponent            
                    }
                ]
            }
        ]
    }
];
Run Code Online (Sandbox Code Playgroud)

如果url在url 的末尾有/ mirror,那么必须加载镜像组件,如果不加载login组件的话.将为上面显示的URL加载镜像.根据url的可变部分,每个镜像组件内部将具有不同的属性值.

对于登录组件,网址将如下:

HTTP://本地主机/的MyHouse

要么

HTTP://本地主机/的MyHouse/floor1

要么

HTTP://本地主机/的MyHouse/floor1/bathroom1

我试过想使用正则表达式,但似乎新版本的angular2不支持正则表达式.如果我错误地无法使用正则表达式,请通过示例向我指出这个方向.如果没有,请指出我正确的方向.

angular2-routing routeconfig angular2-router angular

4
推荐指数
1
解决办法
9194
查看次数