電子書籍の厳選無料作品が豊富!

いつも大変にお世話になります。

相談は現在ニューアル中のASP.NET Webサイトについてです。
2005年ごろから運用されているサイトで、当時っぽく「Webサイト」で構築されています。
(VS2005が出た当初はスタンダードな形態だと聞きました)

内部に大量の画像データ(約20,000点)があり、1,000+個のディレクトリに入っていて、それがルート直下のディレクトリに配置されています。こんな感じです。
StockImages => 20120501 => ICMP10002345.jpg

このデータを運用サーバから抜いて、VS2010(SP1)の開発環境にセットしましたところ、ビルドが通りません。
「OutOfMemoryException」エラーが出て、VS2010が強制終了します。
画像フォルダを外すと問題なくビルドできることから、ほぼ間違いないと思います。
画像の解像度を落としても変化ありません。とにかくファイル点数が多すぎるようです。

「Webサイト」形式では、このような状況は避けられないことなのでしょうか?
事情があり(C#とVBが混ざっていて。。)、「Webサイト」形式でないといけないようです。
また、データ内容からくる理由で、画像をサイト外に置いたり、画像を出し入れしながら開発するスタイルがとりにくく、できればなんとかサイト内で開発したく思っております。

こういう場合、どんな解決策があるでしょうか?

A 回答 (2件)

> ところが、「Webサイト」の特性として、プログラム自体の動作については問題ないようです。



ああ、Webサイトは実行時にコンパイルされて動いてますから、そっちはOKなんですね。
デバッグ実行時にビルドがはしりますが、あれはたぶんコンパイルによるソースチェックはしらせてるだけだと思います。
実際、VSでデバッグ実行するときって、ビルドによって作成されるDLLと実行時のコンパイルによって作成されているのであろうDLLと2つできたりしてるので。

> 一番困るのは「デバッグ実行」できないことで、

デバッグだけでもなんとかできれば、ということならリモートアタッチでしたっけ?VSから稼働中のサーバにつないでデバッグする、ということができるはずなので、その手が使えるかも。
ただし、Expressにはその機能がありません。
Pro以上をお使いでしたらためしてみてもいいかもしれません。
    • good
    • 0
この回答へのお礼

ありがとうございました。
ご指示のように、サーバプロセスにアタッチして、何とかデバッグできています。
で、テスト的にフォルダを100個くらいに減らしたら、問題なくビルドできました。
このプロジェクトは、フリーのWen用WYSIWYGエディタであるCKEditorなども使われており、そもそもディレクトリ数が非常に多かったです。
「Webサイトは小規模向け」というような説明があって「何でかや?」と思っていたのですが、なるほど、こういう事ですか。納得しました。
今回は(今回も)ありがとうございました(再々拝

お礼日時:2012/12/19 19:46

ほんとに勘でしかないですが。


開発サーバの制約なのかもしれません。IISとは多少動きが違いますので。

であれば、開発サーバを使わず、開発PCにIISを設定してそのIIS上で開発作業をしてみたらどうでしょう。
うまくいくかどうかわかりませんが、試してみてもよいかと思います。

この回答への補足

onos様、いつもいつも有難うございます。
早速、おっしゃった内容でトライしてみました。

結果としてサーバ設定が、開発サーバ、IISExpress、IIS7.5の場合とも、やはりビルドは失敗します。
ところが、「Webサイト」の特性として、プログラム自体の動作については問題ないようです。
開発サーバでも、.aspxを右クリックして「ブラウザで表示」すれば正しく動きます。
どうも「ビルド」だけが通らない。

一番困るのは「デバッグ実行」できないことで、F5 => ビルドの際にハングアップして、しまいにはVSごと落ちてしまいます(号泣
「Webアプリケーション」プロジェクトならこんな時「プロジェクトから除外」とかやっておけばいいのですが、「Webサイト」プロジェクトだとそうもいかず。。

補足日時:2012/12/18 11:03
    • good
    • 0

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