2009-03-21 5 views
2

ADO.NET 데이터 서비스는 응용 프로그램 내에서 차세대 데이터 액세스 계층입니다. Silverlight 또는 Ajax와 같은 UI 레이어에서 직접 데이터를 사용하는 예제를 많이 보았습니다. 이것은 거의 비즈니스 계층이 완전히 제거 된 2 단계 시스템을 가지고있는 것과 같습니다. 비즈니스 계층에서는 DAL에 액세스해야하며 UI에서는 직접 액세스하지 않아야합니까?ADO.NET 데이터 서비스 전체 디자인의 위치

답변

2

ADO.NET 데이터 서비스는 데이터를 이동하기 위해 평가하는 또 하나의 도구라고 생각 .

.NET RIA 서비스는 또 하나입니다. 나는 훨씬 더 잘 말할 것이다.

높은 수준의 프레임 워크 에 의해 사용되는 낮은 수준의 서비스로 ADO.NET Data Services를 참조하십시오. 내 UI가 직접 그것에 말하게하지 않을 것이다.

ADO.NET 데이터 서비스에서 볼 수있는 주된 문제점은 보안과 관련이 있습니다.

간단한/빠른 작업 인트라넷의 경우 디자인을 선택하지 않은 경우 유용 할 수 있습니다. (IMO) 기존 데이터베이스의 데이터를 신속하게 노출해야 할 때 매우 편리 할 수 ​​있습니다.

나는 편리하다고 말하지만, 내가 할 수있는만큼 피할 수 없으므로 첫 번째 선택이 아닐 것이다. "빠르고 더러운"해결책. 그 해결책은 유령과 같고, 언제나 당신을 기다리고 있습니다.

2

ADO.NET 데이터 서비스는 응용 프로그램

당신이에서 것을 있어 아무 생각이 내 데이터 액세스 계층의 다음 세대! 아마도 ADO.NET Data Services와 ADO.NET Entity Framework을 혼동하고 있습니까?


Microsoft가 생산하는 모든 것이 모든 개발자에게 가치 있다고 가정하면 안됩니다. 제 견해로, ADO.NET Data Services는 CRUD 서비스를 만드는 빠른 방법입니다. CRUD 서비스는 엔티티에 정의 된 몇 가지 다른 작업을 가지고있을 수 있지만 작업은 모두 저장 프로 시저입니다. 데이터베이스 지향 서비스가 필요한 경우 이것이 원하는 것일 수 있습니다. 확실히, 데이터베이스를 제외하고는 이와 같은 서비스를 코딩 할 이유가 거의 없습니다.

그러나 그렇다고해서 모든 프로젝트의 ADO.NET Data Services에 "전체 디자인에 대한 위치가 있습니다"는 의미는 아닙니다. Microsoft가 충분한 돈을 개발하고 유지 관리하는 데 가치가 있다고 생각한 충분한 고객의 필요를 채워주는 것입니다. 그 문제에 대한

, 그들은 또한 ASP.NET MVC 좋은 생각 ...

:-)

+0

ADO.NET 데이터 서비스는 EDMX에 대한 인터페이스를 제공합니다. 클라이언트가 데이터 소스에서 데이터 작업을 수행 할 수 있도록 허용합니다 (DAL) 그러나 이름에 관계없이 전체 디자인에 어느 부분이 들어 맞습니까? – user80855

1

다른 의견은 ADO.Net 데이터 서비스의 중요성을 과소 평가합니다. 응용 프로그램에서 직접 사용하더라도 2 계층 시스템, .Net RIA Services, Windows Asure Storage Services 등의 다른 Microsoft 제품과 유사합니다. "간단한/빠른 작업의 경우, 인트라넷에서, 그리고 디자인을 고르지 않으면 유용 할 수 있습니다"라는 문구와는 달리 ASP의 웹 사이트를 비롯한 공개 웹 사이트에 유용 할 수 있습니다. 순 MVC.

Dino Esposito는 Ado의 추진력을 설명합니다.자신의 블로그에 인터넷 데이터 서비스

http://weblogs.asp.net/despos/archive/2008/04/21/the-quot-driving-force-quot-pattern-part-1-of-n.aspx

"ADO.NET 데이터 서비스 (일명, 아스토리아)

동인 :. 게다가 건물의 필요가 풍부한 대화 형 웹 시스템 그 추상의 : 새로운 세트 중간 계층 또는 더 나아가 엔터프라이즈 클래스 응용 프로그램을 비롯한 모든 응용 프로그램에서 중간 계층의 최상위에있는 서비스 계층을 구현하는 도구 구체적인 내용 : 하이퍼 링크를 통해 호출 할 URL을 제공합니다. 데이터를 클라이언트에 전달할 수 있습니다. 클라이언트가 부분적으로 필터링 된 데이터에 직접 액세스해야하는 시나리오의 경우보다 효과적입니다. IE에서 데이터를 수집하지만 AJAX를 숨쉬는 차세대 웹 컨트롤을 구축하는 데 이상적입니다. 그리고 그것뿐입니다. "

+0

죄송 합니다만, 그것이 fron Dino Esposito와 관련 있다고해도 말도 안됩니다 .Austure가 없으면 Azure와 RIA를 구현할 수 없었을 것입니다. 우스꽝 스럽습니다. . –

관련 문제