설정Visual Studio 서비스 참조 용 사용자 지정 템플릿?
Visual Studio에서 웹 서비스를 사용하려고합니다. WSDL 문서에서 가리키는 서비스 참조를 추가했습니다. 나는 챔피언처럼 작동하는 생성 된 코드를 얻는다.
문제점 서비스 참조 대화 상자에서
, 나는대로 "내부"선택 "생성 된 클래스에 대한 액세스 수준." WhateverSoapClient 클래스 앞에 "internal"키워드를 넣은 것처럼 보입니다. 그루비. 그러나 생성 된 모델 클래스 앞에는 "공용 부분"키워드가옵니다. "부분적인"부분은 괜찮지 만 (원하는 경우라도) 일반인에게는 적합하지 않습니다. 나는이 클래스들을 내부적으로 원한다.
해결책은 무엇입니까?
분명히 Visual Studio (svcutil.exe?)는 Reference.cs를 생성하기 위해 템플릿을 사용하고 있습니다. 맞습니까? 해당 템플릿을 변경하거나 대안을 지정할 수있는 방법이 있습니까? 아니면 잘못된 나무를 짖고 있습니까?
감사합니다.
나는 이것에 관해 매우 새로운 것이므로, 나는 그 질문을 나쁘게 표현했을지도 모른다.
편집 : Tuzo의 코멘트에 대한 응답으로, 나는 다음에 비주얼 스튜디오를 연결하고있어 :
VS는 Catalogue_Retrieve()라는 메서드가있는 CatalystEcommerceWebserviceSoapClient라는 내부 클래스를 생성합니다. Catalogue_Retrieve()는 Catalog 객체를 반환하고 Visual Studio는 Catalog 클래스를 "public partial"로 생성합니다. 나는 그것을 내부적으로 원한다. 여기
가 생성지고 무엇의 일부 조각입니다internal partial class CatalystEcommerceWebsierviceSoapClient : System.ServiceModel.ClientBase<BcApi.EcommerceApi.CatalystEcommerceWebserviceSoap>, BcApi.EcommerceApi.CatalystEcommerceWebserviceSoap {
public BcApi.EcommerceApi.Catalogue Catalogue_Retrieve(...) {
// ...
}
}
public partial class Catalogue : object, System.ComponentModel.INotifyPropertyChanged {
// ...
}
그리고 제이미에 응답
, 나는 SubSonic에 T4 템플릿 덕분에 익숙 해요. 그래서 저는 이미이 문제에 대한 T4 관련 대답을 조금 풀었습니다. 그래도 조금 더 파고들 수 있습니다. 팁 고마워.
Visual Studio는 코드 생성의 많은 부분 (아마도 모두?)에 대해 "T4 템플릿"이라는 시스템을 사용합니다. 아마도 그것은 Google 검색에 포함 할 유용한 용어 일 수 있습니다. –
서비스 참조를 추가하고 액세스 수준을 내부로 선택하면 생성 된 파일에 "공용 부분"이 표시되지 않습니다. 내 ServiceClient 및 내 DataContract 유형 모두 "내부 부분"으로 표시됩니다. 어쩌면 샘플 코드를 게시 할 수 있다면 도움이 될까요? –