0

我的问题有两部分:

1

我的 MVC 项目的文件夹结构如下:

文件夹结构

我想在“创建”页面中创建一个链接到“储蓄”的链接WebForm

我尝试将其添加到 RouteConfig:

routes.MapPageRoute(
            "idea-savings-calculator",
            "Idea/Savings",
            "~/Views/Idea/Savings.aspx"
            );

但默认的 MVC MapRoute 功能:

routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
        );

首先映射到 URLlocalhost:xxxx/Idea/Savings并引发错误,因为在 Idea 控制器 Savings 中没有称为 Savings 的操作。

编辑:RouteConfig 类:

public class RouteConfig
{
    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
        routes.IgnoreRoute("{resource}.aspx/{*pathInfo}");

                    routes.MapPageRoute(
            "idea-savings-calculator",
            "Idea/Savings",
            "~/Views/Idea/Savings.aspx"
            );

        routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
        );

    }
}

2

下面是从“创意”控制器 URL 的“创建”视图中截取的部分:http://localhost:51946/Idea/Create 创意>创造>

红色框表示我想要储蓄链接的位置WebForm

储蓄WebForm只是一个简单的计算器;我如何将计算中的产品传递回上面的“创建”页面,以便它可以显示在底部的文本框中?我猜它会作为Idea Controller可以匹配的url中的参数?但是……如何?

谢谢!

4

1 回答 1

1

因此,为了解决我的第一个问题,我将 WebForms 页面“Savings.aspx”移动到了我的项目路径,并在 MapRoute 方法之后使用了 MapPageRoute。

routes.MapPageRoute(
"idea-savings-calculator",
"Idea/Savings",
"~/Savings.aspx"
);
于 2013-05-01T10:43:58.997 回答