私は自分のサイトにデータベースに格納されているコンテンツを表示する機能を設定しています。このコンテンツには、サイト上の他のリソースへのリンクが頻繁にあります。 DBに登録されたmvcのテキストコンテンツのルートを置換する
:デバッグおよびその他の理由により
"Lorem ipsum dolor sit <a href='http://mysite.com/somecontroller/someaction'>amet</a>."
、私はそのURLのハードコードにしたくありません。 http://mysite.com/somecontroller/someaction
をUrlHelper.Action("somecontroller", "someaction")
に置き換えたいとします。
自分で作成した規約に基づいて代替品を書くことができます。それは簡単で、私がしたいことを達成するでしょう。しかし、私はいくつかのよりクリーンな、またはより標準的な解決策が欠けているかもしれないと思った。だから、これを行うためのより洗練されたより保守的な方法がありますか?
私はちょうど魔法の文字列置換法で行こうと思います。しかし、将来のリファクタリングの可能性として、カスタムのVirtualPathProviderについてのアイデアを保存すると思います。 – Hypnovirus
@Danの最大の欠点は、誰がコンテンツに入っているのか、どのようにコードと同期しなくなるのだろうか。私は自分のPathProviderを作成して、dllでコンパイルされたリソースからViewsを引き出す必要がありました。それはうまくなったが、もっと問題があると思う。 –
今のところ、内容は私のスタッフの何人かの部分を流れてしまいます。ユーザーが編集できるようにする前に、文字列規則をリファクタリングするか、かなり強力なUIツールと検証を提供する必要があります。 – Hypnovirus