2011-04-30 5 views
1

MVC2 (ASP.NET MVC 2 Framework)의 예제를 따르고 있습니다. 내 질문에 LINQ to SQL 및 mySQL 데이터베이스에 관한 것입니다. 이 책의 예제는 SQLServer에 연결되어 있으며, mySQL 데이터베이스에 연결하고 있습니다.MVC2 with mySQL 및 LINQ to SQL

지금까지 나는 그러나, 나는 다음과 같은 LINQ 문에 erroring있어 것을 알았어 야 ... DB를 연결하고 기록을 당길 수 있었다 : 나는 읽었습니다

 return View(productsRepository.Products 
      .Skip((page - 1) * PageSize) 
      .Take(PageSize) 
      .ToList() 
      ); 

LINQ to SQL은 원래 mySQL을 지원하지 않았지만 mySQL .Net 커넥터를 사용하면 이러한 변화가 있었습니까? LINQ to SQL은 이제 MySQL에서 완벽하게 지원됩니까?

mySQL이 아직 완전히 지원되지 않는 경우 차이점을 이해하는 데 도움이되는 참조가 있습니까?

감사

은 BTW 내가지고있어 오류 메시지는 다음과 같습니다

당신은 당신의 SQL 구문에 오류가 있습니다; 올바른 구문 근처에서 사용하는 MySQL 서버 버전에 해당하는 설명서를 확인 't0에 의해 (ORDER를. ProductId, t0을. Name, t0을. Description, t0을. Price, t0을.'라인 3

+0

후 첫 번째 의미 (의미 그들은 0,1,2가, ..., N보다는 1,2,3, ..., n은 계산) 페이지는 음수 인'-1 * PageSize'를 건너 뜁니다. 코드에서 '-1 *'을 제거하면 (페이지가 0으로 인덱싱되었다고 가정 할 때) 어떻게됩니까? – KPthunder

+0

@KPthunder - 그걸로 생각 했었지만 - 1을 꺼낸 후에도 여전히 같은 오류가 발생했습니다. – webdad3

답변

1

LINQ에 SQL에만 SQL Server를 지원합니다. MySQL의 지원이 필요합니다

경우는 엔티티 프레임 워크 또는 NHibernate에 같은 다른 ORM을 사용하여 시도해야합니다. 쿼리 AB를 실행하려고 할 때 발생 오류에 관해서

사실, 페이징을 위해 SQL Server에서 사용되는 SQL 구문이 다른 관계형 데이터베이스에서 사용되는 구문과 크게 다릅니다. 페이지가 제로 색인 경우

+0

@simon - 그게 내가 두려워했던 것입니다 ... 내가 MVC2와 mySQL에서 가질 수있는 옵션이 있습니까? – webdad3

+0

@ 제프 - 내 대답을 업데이트했습니다. 더 궁금한 점이 있으시면 다시 질문하십시오. –

+0

@Jeff, NHibernate는 Linq를 지원합니다. Linq2Sql과 조금 다른 방식으로 작동하지만 거의 모든 관계형 저장소에 연결할 수 있습니다. – JasonTrue

1

체크 아웃 DbLinq

+0

2008 년 이후로 업데이트되지 않은 것으로 보입니다 ... 그럴 경우 너무 나쁩니다. 링크를 가져 주셔서 감사합니다. – webdad3