У нас есть шаблон T4 с использованием System.Data.Entity.Design.PluralizationServices
для обработки имен таблиц для некоторых поколений моделей.ПлюрализацияУслуги, меняющие статус на Statu
Когда мы запускаем таблицу с Status
на имя, например CompanyStatus
, метод Singularize
возвращает CompanyStatu
. У меня есть пример кода ниже.
Как я могу получить его, чтобы правильно увидеть CompanyStatus?
void Main()
{
// Sanity checks
Console.WriteLine(Singularize("Cats"));
Console.WriteLine(Singularize("Cat"));
Console.WriteLine(Singularize("Status"));
// The real issue
Console.WriteLine(Singularize("CompanyStatus"));
}
static string Singularize(string word)
{
var singularword = System.Data.Entity.Design.PluralizationServices.PluralizationService.CreateService(System.Globalization.CultureInfo.GetCultureInfo("en-us")).Singularize(word);
return singularword;
}
Это возвращает:
Cat
Cat
Статус
CompanyStatu
Я также попытался:
static string Singularize(string word)
{
var pluralizationService = System.Data.Entity.Design.PluralizationServices.PluralizationService.CreateService(System.Globalization.CultureInfo.GetCultureInfo("en-us"));
((ICustomPluralizationMapping)pluralizationService).AddWord("companystatus", "companystatuses");
var singularword = pluralizationService.Singularize(word);
return singularword;
}
Может быть '((ICustomPluralizationMapping) pluralizationService) .AddWord (" companystatus "," companystatus ");' – Kevorkian
По-прежнему нет @Kevorkian. –