2014-01-07 4 views
1

Wcf Data Services를 사용하여 엔티티 프레임 워크 데이터베이스를 노출하기 시작했습니다. WCF는 일반적으로 잘 알고 있지만 데이터 서비스는 아닙니다.Wcf Data Service Client

프로그램을 실행하고 서비스 참조를 추가하지 않고도 클라이언트를 만들려고합니다.

데이터베이스가 작성되지 않았거나 완료되지 않았으며 이에 대한 다른 개발자가 있기 때문입니다.

나는 DataService<T>.AttachHost() 방법을 사용하여 보았지만 이것은 DataServiceHost이 구현하지 않는 IDataServiceHost을 필요로합니다.

아무에게도이 작업을 수행 할 수있는 방법이 있는지 또는 서비스 추가 참조가 붙어 있습니까?

감사

편집

그냥 내 질문이 제대로 말로 표현 된 반사에 같은, 좀 더 설명합니다.

다음은 네트워크 설정의 예입니다.

SQL Server | 방화벽 | APP SERVER | 방화벽 | CLIENTS

그래서 (MS-SQL) SQL 서버에서 데이터베이스를이

WcfDataService는 DataService<MyContext>에서 상속 및 Windows 서비스에서 호스팅에 의해 구현 포트 1234 WcfDataService에 APP 서버에서 실행되고

클라이언트가 DataService에 연결할 필요가 있습니다. - htp : // app-server : 123465/

클래스를 만들려면 어떻게해야합니까? DataService를 호출 해, 그 메소드를 사용합니다.

감사합니다.

+0

DataSvcUtil.exe 도구를 사용하면 서비스를 호스팅하지 않고도 엔티티 모델에서 코드 파일을 생성 할 수 있습니다. 자세한 내용은 http://msdn.microsoft.com/en-us/library/dd756369%28v=vs.110%29.aspx를 참조하십시오. – ChrisO

+0

우리는 먼저 코드를 사용 했으므로 엔트리는 POCO이고 DbContext가 있어야합니다. .csdl 파일이 무엇인지 확실하지 않으므로이 방법으로이 방법을 사용할 수 있습니까? –

+0

.csdl 파일은 서비스가 호스팅 될 때 노출되는 메타 데이터 파일 일 뿐이며 엔티티 모델을 나타냅니다. 서비스 참조 추가는 해당 파일을 사용하여 클라이언트 측 DataServiceContext 코드를 생성합니다. 나는 꽤 오랫동안 검색했고 코드 첫 번째 모델에서 DataServiceContext 코드를 생성하는 방법을 찾지 못했습니다. – ChrisO

답변

0

클라이언트 컨텍스트를 만드는 방법을 묻는 것처럼 들립니다. DataServiceContext를 사용할 수 있습니다.

예 :이이 이상 더 많은 작업은 ... 그러나 이것은 당신이 올바른 길을 시작할 수 있어야 **

var serviceRoot = new Uri("http://app-server:123465/"); 
var context = new DataServiceContext(serviceRoot, DataServiceProtocolVersion.V3); 

.