Проверьте этот метод.Сначала вы можете создать класс, который наследует DataContext.И затем вы можете использовать методы DataContext, такие как ExecuteQuery <>, чтобы конвертировать ваши результаты в объекты.С помощью этого метода вы можете напрямую использовать ваши запросы, которые вы написали ранее.Кроме того, я считаю, что этот способ намного лучше, чем поддержка файла .dbml, из-за проблем, связанных с синхронизацией с реальной схемой базы данных.
Рассмотрим следующий пример.Сначала вам нужно определить класс для взаимодействия с вашей базой данных
public class DBManagerDataContext : DataContext
{
private static string connectionString = ""; // Your connection string
public static DBManagerDataContext CreateInstance()
{
return new DBManagerDataContext(connectionString);
}
protected DBManagerDataContext(string connectionString)
: base(connectionString, new AttributeMappingSource())
{
}
}
Затем вы можете использовать этот контекст для выполнения запросов и преобразования их в объекты, как показано ниже:
public class Report
{
public int ReportID;
public string ReportTitle;
public DateTime ReportDate;
private static string query = "select ReportID, ReportTitle, ReportDate from dbo.Reports"; // Your query
public static List<Report> GetReportList()
{
DBManagerDataContext context = DBManagerDataContext.CreateInstance();
return context.ExecuteQuery<Report>(query).ToList();
}
}
Выможет использовать метод "GetReportList ()", приведенный выше, например, так:
List<Report> reports = Report.GetReportList();
В случае обновлений, метод, предложенный "jdandison", является хорошим вариантом, за исключением использования контекста данных каквыше.В случае обновлений это будет "ExecuteCommand", хотя.Пожалуйста, изучите класс DataContext для получения дополнительной информации.
Редактировать: Обратите внимание, что имена столбцов запросов должны соответствовать определению в объекте