Có ai đó đã chuyển mẫu netTiers được đặt thành các mẫu T4 của Visual Studio không? Hoặc là có một hệ thống phạm vi tương tự? Có ai sử dụng T4 trong môi trường làm việc không? Điều gì (nếu có) sự khác biệt lớn là có giữa Codesmith và T4?CodeSmith v.s. T4: .netTiers level suite
Trả lời
Tôi dabbled in T4 cho một chút - hey, nếu nó miễn phí và bao gồm trong VS2008, sử dụng nó, phải không?
Ý tưởng cơ bản của tôi là tạo một bộ mẫu để đọc bảng cơ sở dữ liệu và tạo các lớp ORM "cuộn riêng của bạn" từ đó.
Tôi đã từ bỏ T4, thất vọng và không thể lấy ngay cả những thứ cơ bản nhất để làm việc đó là một miếng bánh ở CodeSmith.
Ngay cả một nhiệm vụ đơn giản như chọn máy chủ, cơ sở dữ liệu và bảng để sử dụng không thể được thực hiện trong T4 một cách hiệu quả từ "bên ngoài" bản thân mẫu. Có, bạn có thể mã hóa tất cả các giá trị này dưới dạng các giá trị chuỗi thành một mẫu T4 - nhưng thực tế, đó không phải là giải pháp, phải không?
CodeSmith có hỗ trợ tuyệt vời để chọn máy chủ, cơ sở dữ liệu và bảng và bạn có thể đặt các thuộc tính đó trên mẫu và chỉ cần chọn những gì bạn muốn và để mẫu làm công cụ của bạn trên bảng cụ thể mà bạn đã chọn.
Kết luận của tôi: T4 có triển vọng nhưng "chưa có". Nó có thể làm việc cho các kịch bản rất đơn giản, nhưng ngay bây giờ, đó là ý kiến của tôi ở đâu đó gần như linh hoạt và mạnh mẽ như Codesmith.
Đối với một kịch bản như .netTiers, tôi sẽ gắn bó với Codesmith trong thời gian này.
Marc
Tất nhiên, bạn có thể có cài đặt trong một mẫu riêng biệt và chỉ bao gồm nó trong mẫu thế hệ chính. Bằng cách này, tệp cài đặt của bạn sẽ nhỏ và mọi thứ sẽ được chứa trong một tệp. Có thể gọi là 'settings.tt' –
@Robert: chắc chắn - nhưng điều đó không giải quyết được vấn đề cơ bản - không có cách nào dễ dàng chuyển các tham số tới các mẫu T4 ngay bây giờ - một hạn chế ** MAJOR ** theo ý kiến của tôi –
Tôi biết đây là một câu hỏi cũ, nhưng chỉ trong trường hợp bất cứ ai tình cờ gặp phải các cuộc thảo luận - T4 bây giờ có một chỉ thị "Tham số". http://www.olegsych.com/2010/05/t4-parameter-directive/ – EBarr
T4 không phải là CodeSmith. Có, bạn chỉ định tham số trong tệp .tt dưới dạng mã C# hoặc Visual Basic và sử dụng chỉ thị < # @ include #> để tham chiếu việc triển khai thực tế của logic tạo mã. Đây không phải là mã hóa cứng hơn việc chỉ định cùng một thông tin trong một tệp XML với CodeSmith.
Đối với bộ mẫu T4 giống như NetTiers, hãy xem S # arp Kiến trúc: http://code.google.com/p/sharp-architecture/.
Nếu bạn đang tìm kiếm triển khai T4 của DAL được hỗ trợ tốt là Nguồn mở với giao diện LINQ cũng như giao diện Fluent của riêng nó sẽ tạo trình bao bọc cho Bảng, Procs được lưu trữ, Chế độ xem, v.v. SubSonic 3.0. SubSonic 2.2 có cùng độ tốt trừ đi giao diện T4 và LINQ và đang ở chế độ phát hành. SubSonic 3.0 có trong Alpha nhưng bạn có thể tải xuống mã hoặc .dll và các mẫu T4 nếu bạn muốn.
- 1. Visual Studio T4 vs CodeSmith
- 2. NSFetchedResultsController v.s. UILocalizedIndexedCollation
- 3. ConcurrentHashMap.put V.S. ConcurrentHashMap.replace
- 4. C# delegate v.s. eventHandler
- 5. Life Cycle Tools Suite
- 6. Suite Sanity là gì?
- 7. nút html v.s. gửi html?
- 8. Sử dụng WeifenLuo DockPanel Suite
- 9. Thử nghiệm hiệu suất: sem_t v.s. dispatch_semaphore_t và pthread_once_t v.s. dispatch_once_t
- 10. Sử dụng NHibernate với Codesmith để tạo ORM
- 11. JAVA element.getElementsByTagName Restrict để Top Level
- 12. Multi-Level Bao gồm trong CodeFirst - EntityFrameWork
- 13. PowerShell: Get-User –OrganizationalUnit One Level?
- 14. Bắt đầu với T4
- 15. Mẫu T4 và Assembly.Load
- 16. Test Suite trong Flask với MongoEngine
- 17. NUnit không chạy thử nghiệm Suite
- 18. Kiểm tra URL của Suite Django
- 19. Lambda Expressions trong T4 Templates
- 20. Công cụ T4 cho XCode
- 21. Mẫu NHaml T4 cho CRUD?
- 22. t4 "VisualStudioHelper" không tìm thấy
- 23. Thời gian tuyến tính v.s. Số lần hai lần
- 24. Sự khác nhau giữa Index v.s. Khóa trong MySQL
- 25. GPS V.S. gia tốc để tính khoảng cách
- 26. cố gắng hiểu khái niệm mysql: phiên v.s. kết nối
- 27. Đối số vị trí v.s. từ khóa luận
- 28. Hibernate Second-Level Query Cache không hoạt động Eager Fetching
- 29. Rotating ImageView trong Android <API Level 11
- 30. SELECT Statement - NOLOCK với SET TRANSACTION ISOLATION LEVEL READ COMMITTED
Tôi cũng quan tâm để biết cách mọi người khắc phục thực tế là mỗi mẫu T4 chỉ tạo ra một tệp đầu ra. –
http://www.olegsych.com/2008/03/how-to-generate-multiple-outputs-from-single-t4-template/ –