2009-08-12 10 views
1

私のIT部門で、LinuxでMonoを実行するためのASP.NET Webアプリケーションを取得しようとしています。私たちはこれを約1ヶ月も役に立たないように取り組んできました。 Linuxサーバー上のMonoの設定は良いようです。デモ用のASP.NETページをサーバー上で実行でき、正常に動作します。ASP.NET 2.0 Webアプリケーション内でMonoを使用してLinux上で実行する場合の問題

Visual Studio 2008でASP.NET Webアプリケーションを開発しましたが、最近アプリケーションをASP.NET 2.0にダウングレードしました。もともとはASP.NET 3.5にあったが、これは問題の可能性がある。 Webアプリケーションを公開した後、Default.aspx、Web.config、bin(.dllと.pdbファイル)、および空のApp_Dataファイルを受け取りました。今のところ、発生し続けるエラーは、サーバー上のアプリケーションエラーです。

簡単なテストのために、ラベルとボタンを備えた簡単なASP.NET Webアプリケーションを作成しました。私たちはそのアプリを試してみたが、どちらもうまくいかなかった。誰もが私のASP.NET Webアプリケーション内で、アプリケーションが動作するのを妨げるようなものを知っていますか?

アプリケーションエラー:

説明:サーバーでアプリケーションエラーが発生しました。このアプリケーションの現在のカスタムエラー設定により、アプリケーションのエラーの詳細が(セキュリティ上の理由により)リモートから表示されなくなります。ただし、ローカルサーバーマシン上で実行されているブラウザーで表示することはできます。

詳細:この特定のエラーメッセージの詳細をリモートマシンで表示できるようにするには、現在のWebアプリケーションのルートディレクトリにある "web.config"設定ファイル内にタグを作成してください。このタグは "mode"属性を "Off"に設定する必要があります。 !

- web.configファイルの設定File-- 設定 のsystem.web customErrosモード+ "オフ"/ /system.web /設定

注:あなたが見ている現在のエラーページができアプリケーションの構成タグの「defaultRedirect」属性をカスタムエラーページURLを指すように変更することにより、カスタムエラーページに置き換えられます。

! - Web.Configの設定File-- 設定 のsystem.web のcustomErrorsモード= "[リモート" defaultRedirectで= "mycustompage.htm"/ /system.web /設定

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

DFM

+0

このエラーを理解するためには、アプリケーションエラーを提供する必要があります。 – grenade

+0

感謝の手榴弾 - 私はエラーを追加しました。しかし、アプリケーションとは何の関係もないようです。知りません。私は本当にあなたのフィードバックに感謝します。 –

+0

あなたはエラーメッセージを読んだことはありますか?実際のエラーを見つけるために必要なことを正確に伝えます。実際には、実際のエラーを得るための2つの異なる方法を示しています。 – jpobst

答えて

1

だけで解決のためには、私は最終的に問題が何であったかを考え出しました。 ASP.NET Webアプリケーションには、WebアプリケーションがAccess Dbを読み取ることを可能にするonloadイベントがあります。テスト目的のために、WebアプリケーションのADO.NET Dbパスを更新してDbを読み込まないようにしました。そのため、Mono経由でロードされるたびに、問題の一般化されたエラーが発生します。 onloadイベントを削除した後、Webアプリケーションは完全に機能しました。さらに、Webアプリを3.5ではなくASP.NET 2.0にダウングレードし、使用されていなかったLINQ名前空間を削除する必要がありました。

私がしなければならないことは、App_Dataフォルダを指すようにパスを変更して、フォルダにDbを配置することだけです。

+0

FYIとして、MonoはC#3.0とLINQをサポートしています。 – supercheetah

関連する問題