2013-01-04 22 views
9

データベーステーブルを取るプロジェクトをコーディングしました。これは、テーブルの列に関連するC#クラスを選択してビルドします。同様に、フィルタ、クエリなどVisual Studioプロジェクトで新しいVisual Studioプロジェクトをプログラムで生成する方法

これは完全に機能し、私はフル機能の6つのクラスを生成することができます - 私のニーズに応じて - ワンクリックでテーブル。 T4は本当に揺れる!

しかし、私はこれらのクラスのための新しいプロジェクトを作成したいと思います。ご存知のように、これらのファイルを作成するのは私の最終的な目的ではありませんでした。

今、これらのクラスの新しいプロジェクト/ソリューションをプログラムで生成しようとしています。

この問題に関するさまざまな質問を読んだが、それだけでは不十分だった。たとえば、Create a Visual Studio project programmaticallyは私の問題に近いですが、それは私を満足させませんでした。私は新しいプロジェクトのタイプを選択する方法を見つけることができませんでした。

私はProgrammatically generate Visual Studio Solutionを見ましたが、生成されたクラスに新しい解決策を与える方法が見つかりませんでした。また、私はTree Surgeonを見ました。それは私を満足させなかった。それをインストールした後、私はそれがたいていのVisual Studio 2008に設計されていることを見て、それは単にユーザーからプロジェクト名を取るだけです。だから、Tree Surgeonはこの問題の解決策ではありませんでした。

私が必要とするのは、新しいプロジェクトの構造をコード化してプログラムで作成する方法を学ぶことです。答えを見つけたら、私はあなたの新しいプロジェクト名、データベース名、テーブル名、そしてあなたのブラウザに必要なクラスのタイプを書くときに、T4とC#はあなたとta-daのために働くでしょう!コントローラ、ヘルパー、新しいクラスがある新しいプロジェクトを作成します。

可能ですか?

+2

ガイダンスのオートメーションを見たことがありません:http://msdn.microsoft.com/en-us/library/ff687174.aspx –

+0

情報ありがとう、私は今、サイトを見ている。それは有り難いです。 – caner

+0

他のすべてのプロジェクトのようなC#プロジェクトはMSBuild形式であると思います。 [this post](http://social.msdn.microsoft.com/Forums/en-US/msbuild/thread/b3db4d7c-b7d1-4958-9145-bfd34cc75320)を見てください。この場合、私は、プロジェクトと、ファイルのプレースホルダを持つソリューションを使ってテンプレートを作成し、ファイル名をテンプレートに挿入するだけです。 – Buzzy

答えて

4

GAT/GAXが最適です。私はあなたが私の前の仕事で求めているものとまったく同じでした。 Jelle Druytsは最高でGAX/GATについて説明しています。私は彼の6つのブログ(以下の2つのリンク)を使ってVSソリューションでプロジェクトとクラスを生成しました。 6への彼のセッション3は

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

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

がHISTは、彼のブログから1-4を投稿見つけてくださいあなたの最善の策となります。新しいメンバーとして、私はここにすべてのリンクを投稿することを許可しません

関連する問題