【问题标题】:Am I using Pluralizer wrong?我使用 Pluralizer 错了吗?
【发布时间】:2011-12-20 17:21:15
【问题描述】:

寻呼 Jay Querido...

下载了 Pluralizer NuGet 包。我的目标是显示这样的字符串:

与 Z 国家的 Y 合作伙伴签订 X 份合同

如果 X 为 1,则 word 应更改为 contract。如果 Z 为 1,则单词应更改为国家/地区。对于 1 个合作伙伴也是如此。

以下不起作用。它总是导致 TotalContracts 是整个句子的相同数字。

@Html.Pluralize("{_} {contract} with {_} {partner} in {_} {country}",
    Model.TotalContracts, Model.TotalPartners, Model.TotalCountries)
@* result is X contracts with X partners in X countries *@

以下内容确实有效,但不那么可读。有没有更好的办法?

@Html.Pluralize("{_} {contract}", Model.TotalContracts) with
@Html.Pluralize("{_} {partner}", Model.TotalPartners.Count) in
@Html.Pluralize("{_} {country}", Model.TotalCountries)

【问题讨论】:

  • 我一发布就找到答案。似乎这有效:@Html.Pluralize("{0|_} {0|contract} with {1|_} {1|partner} in {2|_} {country}", Model.TotalContracts, Model.TotalPartners, Model.TotalCountries)

标签: asp.net-mvc-3 razor pluralize


【解决方案1】:

看起来我的评论掩盖了一个下划线。这适用于对 Pluralize 的一次调用:

@Html.Pluralize("{0|_} {0|contract} with {1|_} {1|partner} in {2|_} {country}",
    Model.TotalContracts, Model.TotalPartners, Model.TotalCountries)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-23
    • 1970-01-01
    相关资源
    最近更新 更多