質問

IronPythonでC#クラスを再宣言できるかどうかを教えてもらえますか? C#クラスがある場合、IronPythonからモンキーパッチを適用できますか?

役に立ちましたか?

解決

IronPythonからパッチを適用することはできません。 IronPythonは、CPythonが組み込み型を扱うのと同じように、すべての.NETクラスを扱います。モンキーパッチは適用できません。一方、IronRubyはこれをサポートします。

他のヒント

IronPythonからモンキーパッチを適用できますが、IPyは変更を尊重する唯一の環境です。つまり、IronPythonからFile.Createをモックアウトしようとすると、これはどのIPyコードでも問題なく機能しますが、File.Createを呼び出すC#メソッドを呼び出すと、モックではなく実際のメソッドが取得されます。

なぜ再宣言するのですか? サブクラスを作成するか、まったく新しいものを作成する方が理にかなっていますかクラス?

編集:説明してください。実際に必要なのは、キャッスルウィンザー。基本的に、データベースインターフェイスがあり、本番用の実際のデータベースとテスト用のモックデータベースを挿入するようにIOCフレームワークを構成します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top