Mikimemo

個人的な技術・開発メモやポエム

Zenject InterfaceのBindにおけるIdの付け方

BindするInterfaceにIdをつける場合WithIdの書き方が限定される。 BindInterfacesAndSelfTo等を利用してまとめての指定はできなそう。

public class SceneInstaller : MonoInstaller<SceneInstaller>
{
    public override void InstallBindings()
    {
        // できない
        Container.BindInterfacesTo<Sample>()
            .WithId(1)
            .AsCached();

        // できない
        Container.BindInterfacesAndSelfTo<Sample>()
            .WithId(1)
            .AsCached();

        // できる
        Container.Bind<ISample>()
            .WithId(1)
            .To<Sample>()
            .AsCached();
    }
}