大規模な 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 を参照しているにもかかわらず、これを複雑にしすぎているのかもしれません。