Прямой запрос к базе данных Orchard CMS

Я признаю, что это осуждается, но если кто-то может меня развеселить, это было бы здорово.

Я хотел бы вызвать данные из модуля фруктового сада, используя строку SQL. Для этого я предполагаю, что мне нужно получить префикс таблицы, если он указан при создании клиента, а также префикс функции для модуля.

Так например.

string tenentPrefix = //Wherever I get it from?
string modulePrefix = //Wherever I get it from?

string sql = string.Format("select * from {0}{1}MyTableName",tenentPrefix, modulePrefix); 
//MyTableName obviously being the name of the model

Ваша помощь очень ценится.

1 ответ

Решение

Если вы вводите ShellSettingsтогда вы можете получить доступ DataTablePrefix в теме. Это отвечает на первую часть. Во второй части, мы надеемся, что вы знаете имя модуля, поэтому его будет легко перевести в имя таблицы, заменив точки подчеркиванием. ShellBuilder.CompositionStrategy делает это так:

var extensionDescriptor = feature.Descriptor.Extension;
var extensionName = extensionDescriptor.Id.Replace('.', '_');
Другие вопросы по тегам