私はC#とWebFormsMvpを使用しませんが、あなたの質問は一般的なMVPアーキテクチャにかなり関係していると思います。私はそれをWebFormsMvpスコープから説明しましょう。 Pの唯一の責任は、MとVとの間の仲介であるべきであり(VのMデータをどのようにVに渡すか(その逆もまた同様)、Vはの責任を負う。データはユーザー。
次のシナリオを考えてみましょう:特定の種類のプログレスバーまたはシンプルな図表のためにtxtAmount
フィールドをドロップすることを決めました(テキストラベルまたは入力などと見なしてみましょう)。以前に正規化された数値を渡した場合(あなたの場合はMから来ているので)、生の数値を受け入れるはずだから、希望通りに金額表示を置き換えることができます。あなたは(あなたのstring IView.Amount
バックdecimal IView.Amount
に手直しする必要Amount
プロパティの問題「を小数に文字列」との対面になるだろう、後者の場合は
public interface IView {
// How to apply a string to a chart as a data item?
string Amount { set; }
}
:
public interface IView {
decimal Amount { set; }
}
はに上記の比較しますさらに悪いことに:インスタンス内の
%
符号を破棄してパーセント値を解析すると、元の数値タイプを知らなくても数値に戻ってしまう:それは10進数か整数か?
パーセンテージを人間のVと考えることもできます。パーセンテージビューでは42%、プロミルビューでは420‰ですが、モデルでは0.42です。
これはこれをクリアして完璧な意味を持ちます。ありがとう! – drizzie