Wir haben eine T4-Vorlage mit System.Data.Entity.Design.PluralizationServices
, um Tabellennamen für einige Modellgenerierung zu behandeln.PluralisationServices ändern Status in Statu
Wenn wir eine Tabelle mit Status
im Namen ausführen, z. B. CompanyStatus
, gibt die Singularize
-Methode CompanyStatu
zurück. Ich habe unten einen Beispielcode.
Wie kann ich es bekommen CompanyStatus zu sehen, richtig?
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;
}
Das gibt:
Katze
Katze
Den Status
CompanyStatu
ich auch versucht:
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;
}
Vielleicht '((ICustomPluralizationMapping) pluralisationService) .AddWord (" companystatus "," companystatus ");' – Kevorkian
Noch keine @Kevorkian. –