私はasp.net mvc3 C#アプリケーションを持っています。それはデータベースを使用します。データベースは、要件のためにソフト削除シナリオをサポートしています。ソフト削除シナリオはカスケードしません。削除されたと記録されたレコードはグレー表示されます。私の問題は、htmlのマークアップとスタイルを使ってモデルから各ディスプレイを囲む必要がなくてもこれを行う方法です。例えば@Modelのアイテムをより効率的に装飾する方法を教えてください。
:
<span @if(m.Box.isDeleted){
<text>style="background-color:gray"</text>
}>@m.Box.Name @m.Box.Description</span>
私はそれを行うが、私は、文字通りすべてのViewModelにオブジェクト表示にしなければならないすべての余分なマークアップで見ることができます。
私がしたいのは、@ m.Box.Name.AddMarkup()かその程度です。おそらく、私はアイテムを取った後、私はこれにアプローチする方法を確認していない、またはいずれかのが示唆されている場合、このような
namespace place.Markup
public class Markup
{
public ModelItem(object o, property name)
{
//perhaps use reflection so the flag isnt passed all the time
//create markup with flag conditional decoration
//return markup
}
}
、その後
@Markup.ModelItem(@m.Box.Description)
として正しいマークアップを返されたヘルパーを作ることができます方法は他人がこの問題にどのように近づいているかです。あなたはソフト削除されたアイテムを表示しようとしましたか?これについては良いチュートリアルがありますか?私は本当にこのテーマについて多くの資料を見つけることができませんでした。
注:これらのオブジェクトのフィルタリングは問題ではなく、意図的に表示され、ソフト削除を反映するように表示する必要があります。
を。 –
@KirkWoll - 申し訳ありませんが、十分に明示されていません。 **効率的にその値に基づいてviewmodelオブジェクトにビュー内のマークアップを追加する方法はありますか?** –