我的视图直接将实体作为模型:
@model MyProject.Models.MyEntity
有没有一种简单的方法可以在视图中获取实体的复数名称?在上面的例子中,我想要MyEntities
.
我知道我可以在助手中或在控制器中执行此操作并将其传递到 ViewBag 或 ViewModel 中 - 但是是否有直接的方法可以在视图中获取它?
非复数名称可以,因为我在String
对象上创建了一个扩展方法,该方法使单词复数:
using System.Data.Entity.Design.PluralizationServices;
namespace System
{
public static class StringExtensionMethods
{
public static string Pluralise(this string word, CultureInfo culture)
{
var service = PluralizationService.CreateService(culture);
if (service.IsSingular(word))
{
return service.Pluralize(word);
}
return word;
}
}
PS。如果有人想使用上述内容,则System.Data.Entity.Design
需要参考。
编辑:
我刚刚意识到我可以做到Model.GetType().Name.Pluralise();
,因为这就是我所传递的。
嗯……有更好的方法吗?