Я следую этому руководству, и я понятия не имею, как использовать Entity SQL: или собственный SQL. Может кто-нибудь помочь?Возникли проблемы с сущностью, чтобы делать sql-запросы
http://www.entityframeworktutorial.net/Querying-with-EDM.aspx
Когда я пытаюсь запустить код при условии, после изменения текста LightBlue к чему-то соответствие мой проект, я получаю:
Ошибка 1 «foo.PMEntities» не содержит определение для «ExecuteStoreCommand» и без расширения> метод «ExecuteStoreCommand» принимать первый аргумент «foo.PMEntities» типа может быть найдено (вы> отсутствует с помощью директивы или ссылка на сборку?)
ExecuteStoreQuery и CreateQuery также имеют такую же проблему.
Я посмотрел на свои ссылки, и я думаю, что все должно быть хорошо.
a busy cat http://img707.imageshack.us/img707/8615/8nz8.png
Я могу запросить с помощью LINQ к лицам просто отлично, но я не очень привык к Linq.
Пример код: `общественного ActionResult CharlieTest() { использования (VAR = objCtx новых PMEntities()) { вар schoolCourse = от CS в objCtx.Courses , где cs.CourseName == "Course1" выберите cs; // «Кур» коррелирует с курсом Cours mathCourse = schoolCourse.FirstOrDefault(); IList courseList = schoolCourse.ToList();
string courseName = mathCourse.CourseName;
}
//Querying with Object Services and Entity SQL
//Entity SQL does not recognize certain statements like createQuery and I can't add a reference to something that will help
//using (var objCtx = new PMEntities())
//{
// string sqlString = "SELECT VALUE cs FROM SchoolDBEntities.Courses AS cs WHERE cs.CourseName == 'Maths'";
// ObjectQuery<Cours> course = objCtx.
// <Cours>(sqlString);
// Cours coursename1 = course.FirstOrDefault<Cours>();
//}
//nativeSQL also doesn't work. Can not find ExecuteStoreCommand or ExecuteStoreQuery
using (var objCtx = new PMEntities())
{
//Inserting Student using ExecuteStoreCommand
int InsertedRows = objCtx.Database.SqlQuery("Insert into Student(StudentName,StandardId) values('StudentName1',1)").ToArray();
//Fetching student using ExecuteStoreQuery
var student = objCtx.Database.SqlQuery<Cours>("Select * from Student where StudentName = 'StudentName1'", null).ToList();
}
return View();
}`
С Рождеством!
Вы пробовали 'ctx.Database.SqlQuery()' это делает почти то же самое, как ExecuteStoreCommand –
Armand
я пробовал, но я не был уверен, что разница была и хотела точно следовать учебнику. Есть ли сопоставимый метод для ExecuteStoreQuery? Я смотрю здесь, и я не вижу. http://msdn.microsoft.com/en-us/library/system.data.entity.database.sqlquery(v=vs.113).aspx – obesechicken13
Спасибо Арманд. Это сделал трюк! Если кому-то нужен образец кода для работы, все, что мне нужно было сделать, это изменить код на «var student = objCtx.Database.SqlQuery (« SELECT * FROM [PM]. [Dbo]. [Users], где Users.UserName = 'uguanch' "). ToList();' По-прежнему нужно выяснить, как читать содержимое. –
obesechicken13