2009-06-10 32 views
2

CMSツールを使用して.resxリソースファイルを生成しています。ASP.NET .resxリソースファイルの有効なリソースキー

空白または句読点文字を含むリソース名を作成する際に危険がありますか?

私はリソースを取得するために、この構文を使用している場合は、それが正常に動作します:

GetGlobalResourceObject("myresources", "audio,visual"); 

しかし、これは例えば、宣言型リソースの構文でエラーが発生します。

また
<asp:Literal ID="litLastName" runat="server" Text="<%$ Resources: GlobalResources,audio,visual %>"></asp:Literal> 

、私は編集するとき。 Visual Studioのresxファイルでは、リソースキーに英数字とアンダースコア以外の文字が含まれていると警告が表示されます。これは、「リソース名」は「有効な識別子ではありませんと言います。

リソースキーのための一般的なガイドラインは、ユーザーが定義した変数のための規則と同じです?

答えて

5

私はここにNETのルールを破っています。ここで

は、期間の使用が許可されていない旨のasp.netのフォーラムでのコメントである:ここで

http://forums.asp.net/t/967741.aspx

はRESXファイルキー命名規則の命名規則についてのSOの質問です:また

Resource (.resx) file Key naming conventions?

、あなたは彼らがスペースまたは奇数何かが本当にだけでなく、コードをホースに起こっているとキーを持つアプリケーションで使用されている方法を考える場合。あなたは

I like to put spaces in resource keys.ChartTitle.TextBlock.Text 
のようにそこに名前を追加した今ならば

http://www.telerik.com/help/aspnet-ajax/advancedmultilanguagelocal.html

:これは、制御のためにこの簡単なチュートリアルで見られるようにtelerikコントロールのようなもののためのリソースファイルを使用する場合には特に悪いです

空白は何かを意味するため、まあまあ、すべての場所でbarfされます。

(期間が有効でなくなっている理由は、上記のリンクでも明らかではありません)

私はまた、パントと言うことができると仮定し、Microsoftの誰かが確かにそれは誤りだと考え、それがなぜVisual Studioのだと思われますあなたにそのエラーを与えています。しかし、それは権威と私たちの上の人の力に疑問を呈することは間違いありません。

長い目で見れば、あなたがそういったことをする必要がある理由はおそらくありません。

+0

これをバックアップするための参照がありますか? – frankadelic

関連する問題