2011-01-12 36 views
8

Làm cách nào tôi có thể chỉ định đường dẫn đầu ra của mẫu T4?Đường dẫn đầu ra cho mẫu T4 được chia sẻ

Khi tôi thêm mẫu T4 bằng cách sử dụng "Thêm làm liên kết" vào dự án của tôi từ $TemplatePath$, nó tạo tệp đầu ra ở $TemplatePath$, chứ không phải $ProjectPath$. Làm cách nào tôi có thể chỉ định rằng $ProjectPath là nơi đặt tệp được tạo?

+3

Tôi đã giải quyết vấn đề này bằng cách có một mẫu chính ở một vị trí và sau đó các mẫu đã nhập mẫu đó (nhưng đã làm một chút) trong mỗi dự án. Tất nhiên, đó không phải là giải pháp đẹp nhất vì vậy tôi quan tâm để xem liệu có ai có thể giải quyết vấn đề này không. –

+0

@Jeff Yates - hãy thêm câu trả lời này làm câu trả lời! –

+0

Jeff - Tôi sẽ nói đó thực sự là một giải pháp rất tốt đẹp. –

Trả lời

7

Tôi đã giải quyết vấn đề này bằng cách có một mẫu chính ở một vị trí và sau đó các mẫu đã nhập mẫu đó (nhưng đã làm ít) trong mỗi dự án. Tất nhiên, đó không phải là giải pháp đẹp nhất.

+0

Được đăng dưới dạng câu trả lời theo yêu cầu. –

+1

Bạn có ví dụ về cách thực hiện việc này không? – jimmystormig

+2

@Jimmy Khi tạo tệp stub .tt, bạn có thể bao gồm tệp chính với chỉ thị này: '<# @ include file =" .. \ SomeProject \ OriginalTemplateFile.tt "#>' – SandRock

1

Chúng tôi thường sử dụng cùng một hệ thống mà Jeff Yates đã đề cập với các mẫu sơ khai tối thiểu (thường là một dòng) bao gồm mẫu được chia sẻ.

Bạn cũng có thể sử dụng T4Toolbox của Oleg Sych để chiếu kết quả đầu ra vào bất kỳ thư mục nào bạn muốn. Tuy nhiên, IVsSingleFileGenerator chuẩn mà công cụ tùy chỉnh của T4 được xây dựng dựa trên không có bất kỳ quay số nào để điều khiển vị trí đầu ra của nó và hành vi của nó trong trường hợp tệp được liên kết là như bạn mô tả.

Các vấn đề liên quan