0
everyone. 나는 진보 된 T4 질문을 가지고 있으며 누군가가 도울 수 있기를 희망합니다.T4와 DSL 통합 및 스크립트 오류 표시
나는 SQL과 유사한 DSL을 만들었고 스크립트는 내 C# 프로젝트의 '.satsql'파일에 저장됩니다.
// contents of myqueries.satsql
SELECT <column t1.Id> FROM <table mytable t1>
나는 파일을로드하고 구문 분석을 시도하는
.tt
파일이 있습니다. 실패하면 Visual Studio 오류 목록에 오류를 추가하고 싶습니다. 사용자가 오류를 클릭하면
myqueries.satsql (1,8) error: unknown column 'xid' on table 't3'.
myqueries.satsql (2,9) error: bad reference: pid.
, VS는 'myqueries.satsql'파일을 열어야하고 C 번호 오류의 경우와 마찬가지로, 해당 라인과 캐릭터에 커서를 가리 킵니다.
T4는 이미 void TextTransform.Error(string)
메서드를 제공하지만 C# 오류와 같은 방식으로 파일, 줄 및 문자를 설정할 수있는 기회를 제공하지 않습니다.
누군가 T4 파일이 T4 파일 자체가 아닌 다른 파일의 오류를보고하는 방법을 알고 있습니까?
많은 감사,
스티브 쿠퍼.
완벽하게 작동했습니다. 오류가 보호되기 때문에 나는 던져졌다. 그래서 intellisense는 TextTransformation 변수가 있다면 그것을 제안하지 않는다. (A) TextTransformation의 추상 서브 클래스를 만들 필요가있었습니다 - 저는 SqlTextTransformation이라고 부르며 (B) TT 파일에 <# @ template inherits = "MyGenerator.SqlTextTransformation "#> –