2016-02-17 25 views
0

有什么方法可以在类库中生成指向MVC动作的超链接?在类库中为MVC动作创建超链接

我们在应用程序中有一些自定义路线,我们在类库中生成一些通知链接。目前,我们对像{域}/{CustomRoute}/{Controller}/{Action}/{QueryString}这样的路径进行了硬编码。但是,我想要更好地构建这些链接,例如使用UrlHelper。

+0

[UrlHelper.Action()](https://msdn.microsoft.com/en-us/library/system.web.mvc.urlhelper.action%28v=vs.118%29.aspx)可能是什么你正在寻找 – przno

回答

0

我只是做了这样的事情。这是我做到的。

首先,我写了创建URL的方法。这些方法需要任何形式的URL参数。这意味着这个逻辑在一个地方,它可以从我的应用程序的其他地方调用。

然后我添加了一些新的扩展方法到UrlHelper。这些扩展方法反过来调用我创建URL的方法。现在,我可以使用我的Razor标记中的@Url.GetMyUrl(args)

当然,我仍然有两个版本的URL格式需要同步:一个是我上面描述的方法。另一个是定义路由映射的代码。但这似乎是一个合理的妥协。