2013-01-04 93 views
9

Veritabanı tablolarınızı alan bir proje kodladım. Bu, tablo sütunlarıyla ilgili C# sınıflarını seçiyorsunuz. Gibi, filtre, sorgu vb.Visual Studio Projesi'nde Yeni Bir Visual Studio Projesi Nasıl Programlanır?

Tamamen çalışır, tam işlevli 6 farklı sınıf oluşturabilirim - ihtiyaçlarıma bağlı olarak - tek tıklamayla bir tablo için. T4 gerçekten sallandı!

Ancak, bu sınıflar için yeni bir proje oluşturmak istiyorum. Anladığınız gibi, bu dosyaları oluşturmak benim nihai amacım değildi.

Şimdi, bu sınıflar için programatik olarak yeni bir proje/çözüm üretmeye çalışıyorum.

Bu sorunla ilgili farklı soruları okudum, ancak bu benim için yeterli değildi. Örneğin, Create a Visual Studio project programmatically benim sorunum yakın, ancak beni tatmin etmedi. Yeni proje türünü nasıl seçeceğimi bulamadım.

Programmatically generate Visual Studio Solution'a baktım ama oluşturulan sınıflarıma yeni bir çözüm sunmanın bir yolunu bulamadım. Ayrıca Tree Surgeon'a baktım. Beni tatmin etmedi. Kurduktan sonra en Visual Studio 2008 için tasarlandığını gördüm ve yalnızca proje adını kullanıcıdan alıyor. Yani, Tree Surgeon bu sorun için bir çözüm değildi.

İhtiyacım olan şey, yeni bir projenin yapısını nasıl kodlandıracağınızı ve program aracılığıyla nasıl oluşturulacağını öğrenmek. Cevabı bulduktan sonra, yeni proje isminizi, veritabanı adınızı/adlarınızı, tablo adınızı ve tarayıcınızda hangi tür sınıfları istediğinizi yazdığınızda, daha sonra hem T4 hem de C# senin için çalışacak ve ta-da! Kontrolör, yardımcı ve yeni sınıflar içeren yeni bir projeye sahip olacaksınız.

Mümkün mü?

+2

Hiçbir zaman kullanmayın, ancak Rehberlik Otomasyonu'na bakın: http://msdn.microsoft.com/en-us/library/ff687174.aspx –

+0

Bilgi için teşekkürler, şimdi siteye bakıyorum. Bunu takdir ediyorum. – caner

+0

Bence diğer projeler gibi C# projeleri MSBuild formatındadır. [Bu gönderiye] bakmayı deneyin (http://social.msdn.microsoft.com/Forums/en-US/msbuild/thread/b3db4d7c-b7d1-4958-9145-bfd34cc75320). Bu durumda ne yapacağım bir proje ve dosya için yer tutucuları olan ve sadece dosya adlarını şablona enjekte eden bir çözüm içeren bir şablon oluşturmaktır. – Buzzy

cevap

4

GAT/GAX en iyi bahistir. Önceki işimde tam olarak ne istediğini yaptım. Jelle Druyts en iyi GAX/GAT'ı açıklıyor. Bir VS çözümünde projeler ve sınıflar oluşturmak için 6 blogunu (aşağıda 2 link) kullandım. 6 His oturumu 3

http://jelle.druyts.net/2006/06/29/GAS05TuningTheCProjects.aspx

http://jelle.druyts.net/2006/07/03/GAS06GeneratingClasses.aspx

hist onun blogundan 1-4 göndermek bulabilirsiniz en iyi bahis olacaktır. Yeni bir üye olarak, buradaki tüm bağlantıları yayınlayamıyorum