0

シナリオは次のとおりです。

サーバー上で実行されている ASP.NET を利用したコンテンツ管理システムがあります。これはサードパーティによって構築されているため、残念ながら、この質問の目的では「ブラック ボックス」と見なす必要があります。私はそれがどのように機能するかについてあまり知りません。IIS 7 を搭載した Windows 2008。

数週間は正常に動作しますが、誰かがページにアクセスしようとすると、突然、この .NET パーサー エラーが返されるようになります。

Parser Error
Description: An error occurred during the parsing of a resource required to service this request. Please review the following specific parse error details and modify your source file appropriately. 

Parser Error Message: Cannot execute a program. The command being executed was
 "C:\Windows\Microsoft.NET\Framework\v2.0.50727\vbc.exe" /noconfig
   @"C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\7082fc73\4a06ea64\iscamrh7.cmdline".

Source Error: 
Line 69:     <!--<%@ Register Src="/web/ContentLibrary/Section/section125.ascx" TagName="section125" TagPrefix="uc1" %><uc1:section125 ID="section125" runat="server" />-->
Line 70:     <%If useAltStyles Then %>
Line 71:      <%@ Register Src="/web/Tags/tag46.ascx" TagName="tag46_14" TagPrefix="uc14" %><uc14:tag46_14 ID="tag46_14" runat="server" />
Line 72:     <%Else %>
Line 73:      <%@ Register Src="/web/Tags/tag41.ascx" TagName="tag41_16" TagPrefix="uc16" %><uc16:tag41_16 ID="tag41_16" runat="server" />

このメッセージには、aspx ページのコンパイルに関与していることがわかっている vbc.exe を「実行できません」と記載されています。そして、それが引用するソース行から@Register、ページ上のコントロールをカスタムしようとすると発生します。

これを引き起こしている可能性のあるものについて、誰かが何かヒントや予感を持っていますか? たとえば、サーバーのリソースが不足しているときに発生するようなものですか?

4

2 に答える 2

1

今後の参考のために、サイトが使用していた COM コンポーネントのメモリ リークによるメモリ不足であることが判明しました。

アプリケーション プールのリサイクル設定にメモリ制限を設定することは、メモリ リークが解決されるまでの一時的な修正であることが判明しました。

于 2010-07-14T17:13:48.683 に答える
0

以下がコピー/貼り付けが原因なのか、例外メッセージによって切り捨てられたのかはわかりませんが、新しいページに aspx コードをコピーして貼り付けると、最初に「If」を「で終了する必要がある」というコンパイル時エラーが発生しますEnd If」ですが、これがどのようにメッセージを受け取るのかわかりません。(ASP.NET 開発サーバー、ASP.NET 2.0 Web プロジェクトの VS2010 でテスト済み)

私を襲う2番目のことは、その行です

<!--<%@ Register Src="/web/ContentLibrary/Section/section125.ascx" TagName="section125" TagPrefix="uc1" %><uc1:section125 ID="section125" runat="server" />-->

コメントされていますが、まだ section125.ascx コントロールが存在する必要があります。section125.ascx コントロール内でエラーが発生している可能性があります。

コメント付きの @Register ステートメントを削除してみてください。

于 2010-07-06T12:38:59.560 に答える