0
私はプロジェクト:ViewDataModelsのビューモデルクラス:DummyClass.csを持っています。 MVC Razorアプリケーションの実行には、MyWebAppという名前が付けられます。 DummyClass AssemblyQulifiedNameを公開するコードの行である場合、このWebアプリケーションでは、私は、ビュー/Home/Index.cshtmlと隠しフィールドを持つフォーム持って、私は反射を通じてできるポストでとてもMVCビューでクラスとアセンブリ名を公開すると、どのようなリスクがありますか?
ViewDataModels.DummyClass, ViewDataModels, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
で
'@typeof(DummyClass).AssemblyQualifiedName'
結果モデルを表現するクラス型を取得します。 ここではどのようなリスクがありますか?回避策はありますか?例:文字列の双方向ハッシュ?
多分私はここで話題になりますが、これは奇妙な願いのように聞こえるでしょうか? MVCでは、Controller Actionは 'public ActionResult DoSomething(DummyClass myData)'をどのタイプに渡すかを指定し、View/the Formがそれに従っていることを確認しなければなりません。これはMVCの基本的な前提であり、モデルバインドと検証は無料で提供されます。 –
はいMVCの概念は簡単で、このビューのモデルとして設定することでこれを解決できます。しかし、このシナリオでは、クラスの名前は異なる値を持つことができるので、クリーンなソリューションは列挙型または基本クラスになる可能性がありますが、クラスマッピングの列挙型にはまったく不安です。 – user2977027