2014-12-19 2 views
1

У меня есть база данных, которая имеет таблицы во всех CAPITALS, например - TABLENAME.Все ВЕРСИКА к SentenceCase

В моем файле TT Я хочу, чтобы преобразовать их в имена, чтобы приговорить случай, например - TableName

Кто-нибудь имел никакого успеха в этом раньше?

Если все остальное не удалось, я думаю, что я мог бы загладить первую букву, например, - Табличное имя было бы лучше всех столиц.

+0

Отъезд в .NET Humanizr на GitHub: https://github.com/MehdiK/Humanizer – Icemanind

+0

Кажется, это было бы невероятно склонны к ранним ложноположительный. Вы бы лучше подумали о том, что такое композиция слов. Так, например, рассмотрим ИСЛАНД. Должна ли она быть Ледяной, Исландии или даже ледяной землей? –

+0

Я отредактировал ваш заголовок. Пожалуйста, смотрите: «Если вопросы включают« теги »в их названиях?] (Http://meta.stackexchange.com/questions/19190/), где консенсус« нет, они не должны ». –

ответ

0

Что вы имеете в виду, это случай с верблюдом, но в вашем случае это невозможно, так как ваша программа не может догадаться, должно ли оно быть TableName или TablenAme, если вы не преподаете вашему приложению все слова на английском языке, по крайней мере те, которые в основном используются в разработке программного обеспечения. .NET Humanizr делает что-то отличное от того, что вам нужно, он разбивает (ну и расширение строки) длинные слова типа «TheVariableThatKeepsNumberOfAttempts» на отдельные слова для создания читаемого человеком предложения. Но, как вы можете видеть, это само слово следует за шаблоном верблюда, и нетрудно дать указание программе разбить слово, из которого буквы являются капиталом. Если еще не поздно, вы можете изменить имена таблиц от TABLENAME до TABLE_NAME, чтобы вы могли легко делать то, что хотите на кодовой стороне.

+0

Или я имею в виду паскаль? Я действительно не думал, что это возможно. Благодаря :) – Andrew

0

Вы можете использовать блок выражений. В блоке выражения в шаблоне t4. Вы можете написать код C#, и, следовательно, ToUpper() будет работать и использовать заявления, которые вы можете добавить. http://msdn.microsoft.com/en-us/library/bb126545.aspx

<#= … #>)