1

Я знаю, что вы можете сделать это в веб-матрице и она отлично работаетвар данные = Database.Open («DatabaseName») Query ("SELECT * FROM таблицы); визуальная студия

var data = Database.Open("databasename").Query("SELECT * FROM table); visual studio 

, но как вы можете добиться чего-то подобного в visual studio 2010 с использованием MVC3 ???

Мне нужно иметь возможность циклически перебирать строки таблицы с помощью foreach() и реализовывать их через api, я изначально начал проект в веб-матрице, но мне было предложено использовать mvc в визуальных студиях вместо этого, у меня ограниченные знания с ним. Я использую сервер SQL sql.

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

+1

Самый простой способ, смотреть в EntityFramework. Чтобы сделать только чистый SQL, проверьте ADO.net. Поиск любого учебника по MVC, скорее всего, покажет вам, как использовать EntityFramework. – Tony

ответ

1

Я обнаружил, что ORM, который наиболее похож на WebMatrix, является Dapper.

https://github.com/StackExchange/dapper-dot-net

Он может быть использован с динамическими объектами в очень похожим образом, как WebMatrix, но также может быть использован с сильно типизированных объектов, если вы хотите. Он доступен как пакет NuGet.

код в ваш вопрос будет в конечном итоге выглядеть примерно следующее: Dapper

using (var con = new SqlConnection(WebConfigurationManager.ConnectionStrings["databasename"].ConnectionString)) 
{ 
    var data = con.Query("SELECT * FROM table"); 

    foreach (var row in data) 
     // do stuff 
} 
+0

Я установил ORM и написал свой код, как вы показали, но я все еще получаю сообщение об ошибке «Query», Ошибка «System.Data.SqlClient.SqlConnection» не содержит определения для «Query» и не существует метода расширения «Запрос», принимающего первый аргумент типа «System.Data.SqlClient.SqlConnection» (вам не хватает директивы using или ссылки на сборку?) – RyeNyeTheComputerScienceGuy

+0

Это в файле '.cshtml'? Если это так, вам нужно добавить '@using Dapper'' в начало. – Polynomial