0

サンプル:

私は2つのクラスを持っています

X と Y:X

私は2つのコントローラーを持っています

XController および YController:XController

public class XController:Controller
{
    public virtual PartialViewResult Detail(X model)
    {
    }
} 

しかし、署名が異なるため、Detail メソッドをオーバーライドできませんでした。

他のビューの 7 か所に RenderAction(p=>p.Detail(y)) コードがあります。YController で Detail メソッドをオーバーライドすると、すべて問題ないはずです。

CustomControllerResolver を作成する必要がありますか?

インターフェイスに使用されない表示テンプレート

上記の解決策は私にとって十分ではありません。それ以外は変えたくないので。YController で Detail Action をオーバーライドするのは私だけです。

少しのDRYで作れます。Action の別の領域から View を呼び出すにはどうすればよいですか? お気に入り

return View("AnotherArea.Detail",model);
4

0 に答える 0