0

大規模な Webforms アプリケーションがあります。アプリケーション全体の多くの場所で、コード ビハインドでハイパーリンクのナビゲーション URL を設定します。文字列リテラルをハードコーディングするのは悪い考えのようです。

hlVideos.NavigateUrl = "/path/to/some/page.aspx";

それを必要とするすべてのページに一定の文字列が必要になる可能性があるため、これも良い考えではないようです。

private const string PathToSomePage = "/path/to/some/page.aspx";

hlVideos.NavigateUrl = PathToSomePage;    

私は、アクセス可能な const 文字列の束を含む単一のクラスについて考えました。これはオープン/クローズの原則に違反しているようで、新しいページを追加するたびに別の定数を追加する必要があります。

public class UrlManager
{
    public const string PathToSomePage = "/path/to/some/page.aspx";
    public const string PathToSomeOtherPage = "/path/to/some/other/page.aspx";
    public const string PathToYetAnotherPage = "/path/to/yet/another/page.aspx";
}

他の人はこれをどのように処理していますか?100 個ほどの URL を扱っており、多くのページが各 URL を参照しているにもかかわらず、これを複雑にしすぎているのかもしれません。

4

2 に答える 2

0

UrlManager ファイル クラスを生成するために、いくつかの T4 テンプレートを記述してみることができます。T4MVCのようなもの。WebForms のサンプルT4Mvc Webフォームについては、こちらを参照してください

于 2012-07-11T09:17:49.850 に答える
0

リソース ファイルの使用を検討してください。そうすれば、ページへの一貫した参照を維持できますが、コードで簡単に維持でき、状況に応じて展開後に簡単にホットフィックスできます。

于 2012-07-10T15:31:43.830 に答える