2010-02-04 2 views
1

linqtosql을 사용하여 SqlServerMembershipProvider와 db 인터페이스가있는 웹 응용 프로그램을 개발했습니다. 그러나 우리는 웹 호스트에 응용 프로그램을 배포 할 때 회원 공급자에게 몇 가지 문제가있었습니다. 로컬 IIS 서버에서 수정할 수있는 일부 응용 프로그램 풀 구성 때문 이었지만 웹 호스트의 plesk로 해결할 수 없었습니다.LinqToSql to LinqToXML - 차이점

우리는 웹 호스팅 회사를 변경하기로 결정했습니다. 이제는 SQL Server 비용이 프로젝트에 너무 많이 들기 때문에 xml을 datasource로 사용할 생각입니다. XML에 대한 멤버 자격 공급자가 있습니까?

SQL과 XML의 주요 차이점은 무엇입니까? 천천히? 더 안전합니까? XML 파일이 커지면로드하는 것이 느려 집니까?

감사합니다.

답변

1

LINQ는 Language INtegrated Query의 약자입니다. Visual Studio 2008의 C# 및 VB.NET에서 소개 된 새로운 언어 기능입니다.

LINQ를 사용하면 코드에 직접 쿼리를 작성할 수 있습니다. LINQ to SQL은 작성한 LINQ 코드를 SQL Server로 전송되는 SQL 문으로 변환합니다. LINQ to XML은 XML을 사용하는 구문을 제공합니다. 둘 다 LINQ를 사용하지만 상호 교환 기술은 아닙니다.

LINQ에 기본 제공되는 다른 주요 공급자는 개체 (특히 IQueryable 인터페이스를 구현하는 개체)에 대해 .NET에서 쿼리를 작성할 수있는 개체입니다.

LINQ를 Twitter API에 대한 REST 웹 요청으로 변환하는 덜 알려진 LINQ 공급자가 있습니다 (심지어 LINQ to Twitter).

SQL Server는 데이터베이스입니다. XML은 일반적으로 텍스트 파일에 저장되거나 전선을 통해 전송되는 정보을 구성하는 방법입니다. XML이 포함 된 하나의 큰 텍스트 파일 (또는 심지어 파일 세트)은 웹 사이트의 끔찍한 데이터 백 엔드가됩니다. 데이터와 트랜잭션에 대한 동시 쓰기를 처리하기 위해 많은 코드를 작성해야합니다. SQL Server는 추가 작업없이 이러한 작업을 수행합니다. 그것이 바로 의도 된 것입니다.

웹 방문자에게 읽기 전용 인 정보가 적은 경우 xml 파일에 저장하는 것이 좋습니다.

LINQ를 통해 SQL Server와 XML 파일의 정보에 액세스 할 수 있다고해서 다른 정보를 대체 할 수있는 것은 아닙니다.

또한 모든 기본 웹 호스팅 계획에는 SQL Server 데이터베이스가 하나 이상 포함되어 있으므로 비용은 문제가되지 않습니다.