1

ASP.NET WebForms プロジェクトの保守を引き継いだのですが、以前の開発者が一部の機能をどのように実装していたのかわかりません。基本的に、彼はマスター ページに空の Label コントロールを持っています。

<asp:Label ID="MyLabelControl" runat="server"></asp:Label>

そして、これは Web.Config の applicationSetting として:

<setting name="MyLabelControl" serializeAs="String">
    <value>Test</value>
</setting>

そして、どういうわけか、ラベルにはアプリケーション設定の値が取り込まれます。どこでも検索しましたが、設定の値をラベルにバインドしている場所が見つかりません。私だったら、マスターページの Page_Load メソッドで行いますが、これは空です。私が知らない特別な拘束力はありますか?

以前にいくつかの基本的な WebForms 作業を行ったことがありますが、これ以前の ASP.NET 作業のほとんどは Razor を使用した MVC で行われていました。はい、私は物事を逆方向に学んでいます:)。彼がこれをどのように行っているかを理解するためにあなたが私に与えることができる助けは素晴らしいでしょう. ありがとう!

4

3 に答える 3

2

このコードを検索できます

NameValueCollection appSettings = ConfigurationManager.AppSettings;
MyLabelControl.Text = appSettings[MyLabelControl];
于 2012-10-09T17:43:33.287 に答える
1

Aghilas のアドバイスで何も得られない場合は、次の回答を確認することから始めます。web.config applicationSettings から ASP.NET マークアップに値を取得する

このサイトが古い場合、構成ファイルを読み取るために非推奨の手段を使用している可能性があるため、おそらくシステム全体の検索を行う必要があります。その場合、次のようなものを検索することをお勧めします。

ConfigurationSettings.AppSettings.Get("MySetting")

そして、その子犬をアップグレードして、できるだけ早く ConfigurationManager を使用してください!

(ただし、クラスでそれを使用することに対して警告するCodeProjectに関する興味深い記事を見ました...最後まで読むことはできませんでしたが、「友好的な警告」のようなものとして読むべきものかもしれません:http://www.codeproject.com/Articles/196563/Don-t-use-ConfigurationManager )

于 2012-10-09T17:53:53.830 に答える
1

ラベルの名前を変更して、何がクラッシュするか見てみませんか? ご存知のように、エラーを導入して、何が機能しなくなったのかを確認してください...

于 2012-10-09T19:07:06.517 に答える