2013-08-30 17 views
6

私は例外がある場合はVisual Studioの2010.net mvc 4 web apiサービスがローカルマシンのパスを例外メッセージで表示するのはなぜですか?

問題

のWebデプロイメソッドを使用して、弊社のWebサーバーにMVC 4のWeb APIサービスを展開している

セットアップスローされると、例外メッセージでサービスが開発されたローカルマシンがリストされます。

例: System.Data.SqlClient.SqlConnection.Open()で

... \ R \ N CでImageApp_REST_Services.Repositories.ImageLinkRepository.Get(文字列ユーザーID)で:\ localuserの\ドキュメント\ビジュアルスタジオ2010 \ Projects \ ImageApp_REST_Services \ ImageApp_REST_Services \リポジトリ\ ImageLinkRepository.cs:行57 \ r \ n

これはサービスがローカルマシンで実行されていることを意味しますか?

または

はちょうど私がウェブデプロイを実行したときから引き継がこのですか?

どのような場合でも、サービスが展開されているWebサーバーがローカルの開発マシンではなく例外メッセージに表示されるように修正するにはどうすればよいですか?

ありがとうございました!

+3

この情報は、プロジェクトがビルドされた.pdbファイルに保存されます。私が思うより詳細なエラーメッセージのために提供されています。プロダクションサーバーにpdbファイルを展開しないことを選択できます。 –

+1

詳細情報:http://forums.asp.net/t/1212228.aspx/1 – Nick

+0

@UfukHacıoğullarıこれは、pdbファイルを配備しない場合、例外メッセージはどのように表示されるのでしょうか? – Zengineer

答えて

4

アプリケーションをデプロイするときには、通常、アプリケーションとともにPDBファイルをデプロイします。 PDBファイルには、行番号を示すためのデバッガシンボルが含まれています...デプロイメント/インストールのためにアプリケーションをビルド/コンパイルした時点で生成され、ローカルパスを参照します。それはあなたがデバッグビルドの下でコードを展開しているか、誤って自分の展開にPDBファイルを展開している意味

PDB information

+0

これをオフにして、web deployがこれらのpdbファイルを追加しないようにするにはどうすればよいですか?あるいは、それらは通常プロダクションアプリに含まれていますか? – Zengineer

+0

デプロイメントとは何の関係もなくビルドです。プロジェクトのプロパティに移動し、[ビルド]タブの[詳細設定]をクリックし、PDBの生成を無効にします。 – Haney

1

、実行時には、通常、唯一のデバッガが気になり、デバッグ情報へのアクセスを持っているいずれかの方法約。パス情報は、ビルドが行われたマシンまたはPDBファイルがコピーされたマシンからの相対パスです。

関連する問題