- PR -

VS2005 ASP.NET での Debug/Release 構成について

投稿者投稿内容
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-03-01 22:55
引用:

Jittaさんの書き込み (2006-03-01 21:56) より:

VS2005 で確認しましたけど?


そんな項目 (ペイン) は、プロパティにはなかったですよ。

引用:

「Releaseがない」というのが、よくわからなかったのですが、
ツールメニューの「ビルド」から、「構成マネージャ」で追加すればいいのでは?
ってか、私のは最初から「Debug」と「Release」があるのですが???


以前に CTP とか入れてませんよね? (^^;)
私は完全にまっさらな環境でインストールしたもので確認しています。

Windows アプリケーションには、該当のペインも項目もあるんですけどね...
Jitta さんの VS のバージョンって何ですか? Team Suite ですか?

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2006-03-01 23:05
 書いたのはベータ2が入っていた環境ですが、今、まっさらからインストールした環境でも確認しましたが、ありますよ。

 ソリューションエクスプローラでプロジェクトを選び、右クリックから「プロパティ」を選択すると、ソースコードなどが表示される画面いっぱいにプロジェクトのプロパティ画面が表示されます(VS.NET2003 だとダイアログボックス)。

 左の方に、上から「アプリケーション」「ビルド」「ビルドイベント」「デバッグ」「リソース」「設定」「参照パス」「署名」「セキュリティ」「発行」「コード分析」のタブがあって、「ビルド」タブを開く。

 上から、「構成」「プラットフォーム」
「全般」
  条件付きコンパイルシンボル
  DEBUG 定数の定義
  TRACE 定数の定義
  プラットフォームターゲット
  アンセーフコードの許可
  コードの最適化
「エラーと警告」
「警告をエラーとして扱う」
「出力」

など。。。


 VB と C# で違うかも、とか?

あっと、Team Suite です。

[ メッセージ編集済み 編集者: Jitta 編集日時 2006-03-01 23:05 ]
ひでたつ
常連さん
会議室デビュー日: 2002/08/09
投稿数: 28
お住まい・勤務地: 岩手県
投稿日時: 2006-03-02 08:58
じゃんぬねっとさん

[QUOTE]<compilation debug="false" /> で、
#if (DEBUG) でいけましたけど。[QUOTE]

検証していただきまして、ありがとうございます。
確かに false にすると、#if DEBUG 〜 #endif の
コードは効かなくなりました。
ただ、画面上ではコードの色が灰色になったままなのと、
(RELEASE) が効かなくなるので、勘違いしてしまっていました。
(RELEASE) のところは (!DEBUG) に書き直して対処します。


Jittaさん

[QUOTE]あっと、Team Suite です。[QUOTE]

そうですか、Team Suite にはありましたか。
僕のは Professional でした。こんなところで差別化されていたとは…。
インストールの方、お手数をお掛けいたしました。m(_ _)m
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-03-02 09:59
引用:

Jittaさんの書き込み (2006-03-01 23:05) より:

ソリューションエクスプローラでプロジェクトを選び、右クリックから「プロパティ」を選択すると、
ソースコードなどが表示される画面いっぱいにプロジェクトのプロパティ画面が表示されます
(VS.NET2003 だとダイアログボックス)。


むー、Windows フォームだと子ウィンドウが全画面表示になるのですが、
Web アプリケーションだと、ダイアログになってしまいますね。
ここからして、何か違う...

Windows アプリケーションと Web アプリケーション、本当に間違えてないんですか?

[編集 : 2 投稿ほど修正...]

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
rvmx
大ベテラン
会議室デビュー日: 2002/09/26
投稿数: 184
お住まい・勤務地: 愛媛県
投稿日時: 2006-03-02 11:05
今日は

当方は、Team DeveloperですがWebにはReleaseは有りません。
ビルドに追加された、Webサイト発行がReleaseにあたるビルドと解釈していたのですが。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-03-02 11:56
引用:

rvmxさんの書き込み (2006-03-02 11:05) より:

当方は、Team DeveloperですがWebにはReleaseは有りません。
ビルドに追加された、Webサイト発行がReleaseにあたるビルドと解釈していたのですが。


そうみたいです。
私も昨日初めて動かして気付きました。

Jitta さん (昼間は投稿できない?) も、

引用:

WIN/WEB間違ってました。
配置するとリリースモードになるので、VSでの設定は不要です。


とのことだそうです。
これで納得できました。

---
ここからはメモ。
<compilation debug="false" /> だと以下のようなダイアログが表示され、

引用:

デバッグが無効です :

Web.config ファイルでデバッグが無効のため、このページをデバッグ モードで実行できません。
以下のオプションから選択してください。

◎デバッグを有効にするために Web.config ファイルを変更する(M)

    [ ! ] Web サイトを運用環境に配置する前に、
        Web.config ファイル内でデバッグを無効にしてください。

○デバッグなしで実行する (Ctrl + F5 と同じ)(R)

[  OK  ][ キャンセル ]


いずれかを選択することで #if (ディレクティブ) DEBUG の動作を確認できます。

コード:

    protected void Button1_Click(object sender, System.EventArgs e) {
        #if DEBUG
            this.Label1.Text = "Debug Mode";
        #else
            this.Label1.Text = "Release Mode";
        #endif
    }


_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
ひでたつ
常連さん
会議室デビュー日: 2002/08/09
投稿数: 28
お住まい・勤務地: 岩手県
投稿日時: 2006-03-02 13:23
そうですか、納得しました。

"Web サイトの発行" を行うと、<compilation debug=true|false />
にかかわらず、(DEBUG) が無効になることも確認できました。

じゃんぬねっとさん、きれいに纏めて頂きまして、ありがとうございます。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2006-03-02 21:09
引用:

minminnanaさんの書き込み(2006-03-01 22:43)より:

WindowsFormと勘違いされているなんて事は無いですか?


 済みません、昨日の時点でminminnanaさんの書き込みに気が付いていませんでした。その通り、勘違いしていました。

お騒がせしました、および、訂正が遅くなって申し訳ありません。


 VS 2005 上での Debug / Release の切替についてですが、Web アプリケーションに関しては不要です。
 1.x では VS.NET がビハインド・コードのコンパイルをし、ASP.NET ワーカプロセスがフォームのコンパイルをしていました。このため、VS.NET と web.config の両方で Debug/Release を設定する必要がありました。
 2.0 になってパーシャルクラスの導入により、ASP.NET のワーカプロセスが一括してコンパイルできるようになったので、VS がコンパイル方法を知っている必要がなくなりました。「ビルド」ツールメニュー内の「Web サイトの発行」コマンドにより、プリコンパイルするときに必ず Relase モードでプリコンパイルされる、ということです。

 英語版ベータのみですが、Visual Studio 2005 Web Deployment Projects というツール(アドイン)を導入すると、VS 上で Debug / Release を選択できますが、やはり VS はどうなっているか知らない、ということです。

情報もと:Debug and Release Builds in ASP.NET 2.0
Google 検索キー:"visual web developer" OR "asp.net" debug release

スキルアップ/キャリアアップ(JOB@IT)