プロが教えるわが家の防犯対策術!

Visual Studio 2008 (ASP.NET)についての質問です。

プロジェクトを開き、IDEのツールバーの「デバッグ開始」ボタンを押してから、
スタートページに設定したフォームが表示されるまでが、非常に時間がかかると感じています。

具体的な状況として、Visual Stuudio 2003から2008に変換した、あるプロジェクトでは、
「デバッグ開始」ボタンを押してから、30秒ほどでステータスバーに「ビルドが終了した」と表示されます。
それから、スタートページに設定したフォームが表示されるまで、1分ほど時間がかかります。

2008に変換する前の、2003のプロジェクトのときは、ビルドは20秒で終了し、
それから、スタートページに設定したフォームが表示されるまでは、15秒ほどでした。
現状、「デバッグ開始ボタンを押してから、スタートページに設定したフォームが表示されるまでの時間」
を比べると、2003と2008では、3倍ぐらいの差があります。


質問内容は、2008の「デバッグ開始ボタンを押してから、スタートページに設定したフォームが表示されるまでの時間」を、
2003並みに高速化できないか、というものです。

なお、スペック等は下記の通りです。
  Visual Studioのバージョン=2008 SP1
  言語=Visual Basic
  プロジェクト数=2
  フォーム数=200個
  IISのバージョン=6.0
  OS=Windows XP

以上、どうぞよろしくお願い致します。

A 回答 (4件)

補足情報ありがとうございました。



確かに、2.8GHz(Pentium4ですか?)、2GBのパワーだと、
No1の回答者さんがおっしゃっているとおり、マシンのスペックパワーが
足りない感じがします。

一応、改善策としては、大きく分けて3種類ありますが、
根本的な解決方法ではないということをお伝えしておきます。
もし、そんな情報でも宜しければご参考にして頂ければと思います。

その1:
Form 200個を1つのProject、ソリューションファイルに押し込めるのではなく、もし、可能であれば、複数のProject、ソリューションファイルに分割してみる。(できるだけ、ソリューションやProjectに、複数のソースファイルを押し込めない)
ただし、1つのソリューションで複数のProjectに分割しすぎると
返って重くなることがあるので、できるだけソリューションを分割
できるような構成にできないか?という点で落としどころを探す。

その2:
共通化できるライブラリがあるなら、独立したソリューション・Projectに押し込め、プロジェクト参照ではなく、DLL参照させるとか、
もしくは、その共通ライブラリ用DLLを
GAC(グローバルアセンブリキャッシュ)に登録することで、
少しでもビルドスピードをUPすることを検討してみて下さい。

GAC登録(gacutilコマンド)
http://msdn.microsoft.com/ja-jp/library/ex0ss12c …

その3:
あまりお勧めはしないのですが、コード分析(FxCop)が有効になっている
場合は、コード分析をOFFにしてビルドしてみる

もし、それでもあまり効果があがらない場合は、
マイクロソフトの「Connect」というサイトで、レスポンス改善の要望を
UPしてみることをお勧めします。
https://connect.microsoft.com/VisualStudioJapan
(ただし、すぐには対応してくれないので時間はかかります。)

ご参考になれば幸いです。宜しくお願いします。
    • good
    • 0
この回答へのお礼

詳細なご助言をありがとうございます!
kero-mioさんから頂いた方針を元に、今のスペックで動作速度を改善できないか試してみたいと思います。

kero-mioさん、edp3142さんのご回答により、スペック不足の線が濃厚という結果を得ることができましたので、
VS2008を快適に動かすためのスペックはどのようなものか、という質問を、別件として立てさせて頂きました。
  http://oshiete1.goo.ne.jp/qa4438963.html
もしよろしければ、ご意見等頂ければ幸いです。

ご回答、どうもありがとうございました。

お礼日時:2008/10/29 16:35

No.1です。

私が予想していたのよりもずっと高スペックのマシンで開発されているように見えました。
多分 Dual Core など CPU を変えたところであまり改善できない気がしますので、別質問を立ち上げられているようですが、マシン交換にも限度があると個人的には思います。

ソリューションを分割して、部分開発をし、マージした状態ではビルドするだけに留めるのが良い気がします。
    • good
    • 0
この回答へのお礼

edp3142さん
やはり、一つのプロジェクトに多くのフォームを詰め込み過ぎでしょうか。。
まさにDual Coreを検討していたところでしたので、有難いご指摘でした。

ご助言通り、まずはプロジェクトの構成から見直す方針で行こうかと思います。
ご回答どうもありがとうございました。

お礼日時:2008/11/04 12:38

調べてみますので、下記補足頂けますか?



・使用しているVisual Studio 2008のエディションはなんですか?

・問題のASP.NET(Webアプリケーション)をVS.NET 2008で作った時に
 選んだプロジェクト形式は、下記のうちどれですか?

「Webサイト」プロジェクト(http://localhost/.... というようなProject名がついているタイプ)
「Webアプリケーション」プロジェクト
「ASP.NET Futures」形式プロジェクト
「ASP.NET Ajax 関連」形式プロジェクト

以上、補足下さい。宜しくお願いします。

この回答への補足

kero-mioさん、ご回答ありがとうございます。

以下、ご指摘の件を補足させて頂きます。
  ・Visual Studio 2008のエディション
    =Development Edition
  ・選んだプロジェクト形式
    =「Webアプリケーション」プロジェクト

また、以下の情報を捕捉として付記させて頂きます。
  ・システム=XP Professional SP2
  ・コンピュータ=2.8GHz, 2GB RAM
  ・プロジェクト内の拡張子「.vb」ファイルのサイズの合計=20MB

以上、どうぞよろしくお願い致します。

補足日時:2008/10/28 18:39
    • good
    • 0

フォーム数がそれなりにありますね。


VS2003に比べてハードウェア要件があがっていますので、単純にスペック不足ではないかと思います。
私もVS2003からVS2005へ移行する過程で作業マシンを乗り換えましたが、VS2008はさらに重いです。
    • good
    • 0
この回答へのお礼

edp3142さん、ご回答ありがとうございます。
VS2008が重いとは耳にしていましたが、VS2003と比べて、こんなに差があるものだとは…
色々と便利な機能が増えたのは良いのですが。
設定などをいじることで、なんとか改善しないものでしょうか…

お礼日時:2008/10/29 08:53

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!