2014-09-27 2 views
0

Programming Entity Framework, 2nd EditionEntity SQL을 사용하는 예제로 작업하고 있습니다. 예제의 문맥의 이름을 변경하고 Entity Framework의 EntitySqlException

ObjectQuery<Contact> objectQuery = ((IObjectContextAdapter)context).ObjectContext.CreateQuery<Contact>(QUERY_STRING); 

에 선

ObjectQuery<Contact> contacts = context.CreateQuery<Contact>(queryString); 

을 변경 난이 얻을 :

using (var context = new PROGRAMMINGEFDBEntities()) 
{ 
    const string QUERY_STRING = "SELECT VALUE c" + 
           "FROM PROGRAMMINGEFDBEntities.Contacts AS c " + 
           "WHERE c.FirstName='Robert'"; 
    ObjectQuery<Contact> objectQuery = ((IObjectContextAdapter)context).ObjectContext.CreateQuery<Contact>(QUERY_STRING); 
    foreach (var contact in objectQuery) 
    { 
     Console.WriteLine("{0} {1}", contact.FirstName, contact.LastName); 
    } 
} 

가 실행되면, 나는 다음과 같은 예외가 :

System.Data.Entity.Core.EntitySqlException was unhandled 
    HResult=-2146232006 
    Message=The query syntax is not valid. Near identifier 'PROGRAMMINGEFDBEntities', line 1, column 20. 
    Source=EntityFramework 
    Column=20 
    ErrorContext=identifier 'PROGRAMMINGEFDBEntities', line 1, column 20 
    ErrorDescription=The query syntax is not valid. 

답변

1

공간을 잃어버린 후

"SELECT VALUE c " 
+0

빙고 ... 감사합니다. – BanksySan