Я ищу способ получить запрос SQL, передать его методу и получить словарь для всех столбцов и связанных с ними таблиц. Мне удалось получить список таблиц из запроса на основе этого:
Список таблиц, используемых в запросе SQL
Например, следующий запрос:
SELECT P.FirstName, P.LastName, P.BirthDate, P.DeathDate, VP.FullName
FROM Presidents P
INNER JOIN VicePresidents VP ON P.VicePresidentID = VP.VicePresidentID
В идеале, он будет возвращать элемент словаря (или пары ключей или чего-либо еще) со следующим:
{FirstName, Presidents},
{LastName, Presidents},
{BirthDate, Presidents},
{DeathDate, Presidents},
{Fullname, VicePresidents}
В идеале это не должно касаться SQL вообще (если это возможно). Идентификаторы (P, VP) не всегда могут быть там. Мой метод, который возвращает таблицы, возвращает президентов и вице-президентов, но мне действительно нужны отношения столбец / таблица Есть мысли?
Я создаю элемент управления MVC, который передает объект из модели, и он автоматически создает всю форму на основе модели. Объект из модели совпадает с SQL-запросом, использованным для его заполнения. У меня есть параметры для поиска и многих типов ввода. Единственное, что я не могу сделать автоматически - это имя таблицы для столбца.
У меня есть этот запрос:
SELECT
AppSettingsTypeID,
AppSettingsTypeName
FROM MasterImport.DBAppSettingsType
WHERE AppSettingsTypeID = 13
Это создает экземпляр этого класса
public class DBAppSettingFull
{
[FormField("App Setting Type", InputType.Dropdown, new int[] { 12, 12, 6, 6, 4 })]
public int AppSettingsTypeID { get; set; }
[FormField("App Setting Name", InputType.Textbox, new int[] { 12, 12, 6, 6, 4 })]
public string AppSettingsTypeName { get; set; }
}
С этой строкой кода
model.Record = Interaction.Single<DBAppSettingFull>(sqlGeneric.GetFirstDBAppSetting.Resource());
Что используется в cshtml с этой строкой кода
@(Html.GenerateForm<Cold.Framework.Classes.DBAppSettingFull>(Model.Record))
и создает форму на странице cshtml. Я нахожусь в процессе написания моего метода ProcessForm. Моя последняя версия этого, я должен был сделать вручную, чтобы дать каждому свойству / столбцу свою табличную связь. Я хотел бы сделать это автоматически.