DHJJ [Hatsune's Journal Japan] blog

Hatsune's Journal Japan blog

目次

Blog 利用状況

ニュース

最新ツイート

運営サイト

Hatsune's Journal Japan
DHJJ

著作など

資格など

OCP
MCP

書庫

日記カテゴリ

わんくま同盟

長い文字列定数はWEBアプリで宣言できない?

長い文字列定数はWEBアプリで宣言できない?

【確認環境】

  • Microsoft Windows XP Professional Version 2002 Service Pack 3
  • Microsoft .NET Framework Version 2.0.50727
  • Visual Studio 2005 Version 8.0.50727.762 (SP.050727-7600)

【状況】

XML WEBサービスやWEBアプリにおいて、Web.ConfigにあるcompilationのdebugをtrueにしてからConstステートメントで文字列として679文字以上の文字を宣言しすると、pdbに書き込めませんエラーとなります。


この現象はWindowsアプリケーションでは発生しません。

以下に、WEBアプリにおける再現コードを記載します。

Partial Class _Default
    Inherits System.Web.UI.Page
    Public Function ConstTest() As String
        Const dummyTitle As String = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
        Return String.Empty
    End Function
End Class

このコードを使って、[WEBサイトのビルド]、[WEBサイトのリビリド]を行うと下記のエラーが発生します。

エラー 1 出力ファイル 'C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\consttest\1c95c898\89155744\App_Web_5afldjnb.pdb' に書き込めません: エラーを特定できません vbc :


Microsoft Connect feedback

投稿日時 : 2008年7月9日 13:29

Feedback

# re: 長い文字列定数はWEBアプリで宣言できない? 2008/07/09 13:40 中博俊

constなんてほぼ使わないので readonlyで対応してください。

# re: 長い文字列定数はWEBアプリで宣言できない? 2008/07/09 13:52 オムライス禁止!

Microsoft Visual Studio 2005
Version 8.0.50727.42 (RTM.050727-4200)
Microsoft .NET Framework
Version 2.0.50727

インストールされている Edition: Professional

Microsoft Visual Basic 2005 77971-009-0000007-41823

OS:Windows Server 2003 EE SP2

な環境です。

# re: 長い文字列定数はWEBアプリで宣言できない? 2008/07/09 13:54 Mr.T

以下の環境では、発生しませんでした。
VS2005じゃないのがちと痛い。

Microsoft Visual Web Developer 2005 76872-000-0000011-00123

OS:Microsoft Windows XP Professional Version 2002 Service Pack 2

現象は発生せず。webconfigのDebug=Trueであっても発生しません。

# re: 長い文字列定数はWEBアプリで宣言できない? 2008/07/09 13:59 はつね

ごめん、サンプルが1文字すくない。
文字ふやすか。いまやってみて。

# re: 長い文字列定数はWEBアプリで宣言できない? 2008/07/09 14:08 ぽぴ王子

再現しました。

ちゅきさんと同じフォーマットにしようかと思ったけど、バージョン情報から情報のコピーを
したものを貼り付けてみます。
あ、言語はC#です。

Microsoft Visual Studio 2008
Version 9.0.21022.8 RTM
Microsoft .NET Framework
Version 3.5

インストールされている Edition: Professional

Microsoft Visual Basic 2008 91984-270-2760956-60323
Microsoft Visual Basic 2008

Microsoft Visual C# 2008 91984-270-2760956-60323
Microsoft Visual C# 2008

Microsoft Visual C++ 2008 91984-270-2760956-60323
Microsoft Visual C++ 2008

Microsoft Visual Studio 2008 Tools for Office 91984-270-2760956-60323
Microsoft Visual Studio 2008 Tools for Office

Microsoft Visual Web Developer 2008 91984-270-2760956-60323
Microsoft Visual Web Developer 2008

Crystal Reports AAJ6G-J0MSA4K-68000GY
Crystal Reports Basic for Visual Studio 2008


OSはWindows XP Professional Service Pack 2です。
Web.configのdebug="true"を"false"にしても変化ありませんでした。

# re: 長い文字列定数はWEBアプリで宣言できない? 2008/07/09 14:11 ぽぴ王子

C#だと

エラー 1 ファイル 'D:\foo\bar\bar\obj\Debug\bar.PDB' にデバッグ情報を書き込んできるときに予期しないエラーが発生しました -- 'エラーを特定できません ' bar

みたいなメッセージ。
「書き込んできるときに」ってなんだww

# re: 長い文字列定数はWEBアプリで宣言できない? 2008/07/09 14:27 オムライス禁止!

こちらは出ました^^。王子さまにならってコピペ

Microsoft Visual Studio 2008
Version 9.0.21022.8 RTM
Microsoft .NET Framework
Version 3.5

インストールされている Edition: Enterprise

Microsoft Visual Basic 2008 91992-270-1826236-60720
Microsoft Visual Basic 2008

Microsoft Visual C# 2008 91992-270-1826236-60720
Microsoft Visual C# 2008

Microsoft Visual C++ 2008 91992-270-1826236-60720
Microsoft Visual C++ 2008

Microsoft Visual Studio 2008 Tools for Office 91992-270-1826236-60720
Microsoft Visual Studio 2008 Tools for Office

Microsoft Visual Studio Team System 2008 Architecture Edition 91992-270-1826236-60720
Microsoft Visual Studio Team System 2008 Architecture Edition

Microsoft Visual Studio Team System 2008 Database Edition 91992-270-1826236-60720
Microsoft Visual Studio Team System 2008 Database Edition

Microsoft Visual Studio Team System 2008 Development Edition 91992-270-1826236-60720
Microsoft Visual Studio Team System 2008 Development Edition

Portions of International CorrectSpell? spelling correction system © 1993 by Lernout & Hauspie Speech Products N.V. All rights reserved.

The American Heritage® Dictionary of the English Language, Third Edition Copyright © 1992 Houghton Mifflin Company. Electronic version licensed from Lernout & Hauspie Speech Products N.V. All rights reserved.


Microsoft Visual Studio Team System 2008 Test Edition 91992-270-1826236-60720
Microsoft Visual Studio Team System 2008 Test Edition

Microsoft Visual Web Developer 2008 91992-270-1826236-60720
Microsoft Visual Web Developer 2008

Crystal Reports AAJ6G-J0MSA4K-68000GY
Crystal Reports Basic for Visual Studio 2008

OS:
Windows Server 2008 EE SP1 (x64)

# 「長い文字列定数はWEBアプリで宣言できない?」は、.NET3.5SP1で解決? 2008/08/29 11:43 DHJJ [Hatsune's Journal Japan] blog

「長い文字列定数はWEBアプリで宣言できない?」は、.NET3.5SP1で解決?

タイトル
名前
Url
コメント