string.Format使用变量名而不是数字

时间:2009-09-15 19:41:58

标签: asp.net asp.net-mvc string

我已经阅读了一些自我实现的帖子,但我认为现在ASP.NET MVC中应该有一些应该具有此功能的方法。

我想有一种方法可以做什么string.Format做:

 string.Format("example {0}", 1);

但是,而不是使用 {0} 可以像MVC路由一样使用变量名称。 例如:

 string.Format("example {id}", 1);

ASP.NET MVC中是否有这样的公共方法?

[修改 知道如何从路线中提取动作链接吗?]

3 个答案:

答案 0 :(得分:1)

我不知道本地方式,但我认为解决方案在于.NET 3.5扩展方法......

一个博客以更易于理解的方式显示了add string.format capabilities的一种聪明方式。

而且,我刚刚发现它。看看this SO question。辉煌!

答案 1 :(得分:0)

从v2预览1开始,在ASP.NET MVC中没有这样的方法。我不知道.NET Framework中的任何此类方法。

答案 2 :(得分:0)

从Visual Studio 2015开始,您可以使用Interpolated Strings执行此操作(这是一个编译器技巧,因此您定位的.net框架版本无关紧要。)

然后代码看起来像这样

string txt = $"{person.ForeName} is not at home {person.Something}"; 

我认为它使代码更具可读性并且更不容易出错,但如果你想将字符串放入资源文件进行翻译,它就不理想了,但是