2013-06-03 12 views
5

MVC4 öğreniyorum ve Entity Framework fikrini aldım. Ama MVC eski tarz sql ifadeleri do 4.mvc4'te eski stil sql nasıl kullanılır

Ben EF koduyla bu eylemi söylüyorlar sağlar acaba

public ActionResult Index(){ 
    var model = from r in restaruants 
       select r; 
    return View(model); 
} 

Dizindeki yerine EF eski tarz sql yapmak mümkün mü işlev? Eski stil sql ile ne anlama geldiğini

sonra 'Linq' demek bile, herhangi bir veri erişim yöntemini zorlamak/sanmam (Tüm sürümler)

public ActionResult Index(){ 
    /* Can I have something like this? */ 
    var model = Return_Model_Somehow("select * from restaurants"); 

    return View(model); 
} 
+0

Eski stil SQL, ADO.NET demektir? –

+0

, "restorandan seç *" –

+0

gibi, yani linq to sql? –

cevap

12

Sen SqlQuery yöntemle ham sql çalıştırmak olabilir: Raw SQL Queries: Burada

var model = context.Database.SqlQuery<Restauraunt>("SELECT * FROM Restaruants") 
        .ToList(); 
return View(model); 

MSDN makale.

+1

çok teşekkür ederim. Sistem beni –

+1

@ayilmaz'a izin verecek kadar kısa sürede işaretleyecektir, ancak Entity Framework'ün tüm gücüne sahipseniz neden buna gerçekten ihtiyacınız var? –

+0

Sorunun çok açık olduğunu ve yeni öğrenenler için çok yaygın bir soru olduğunu düşünüyorum. –

4

MVC "restorandan * seçmek" gibi:

string q = "SELECT *FROM Table1"; 
IEnumerable<Entities.Table1> res = context.ExecuteQuery<Entities.Table1>(q); 

Artık sonucu sayısız koleksiyonunuz var, istediğiniz gibi kullanın.

Bu yardımcı olur umarım.

İlgili konular