在 Blazor 中,.razor 文件和 .cs 文件中的依赖注入方式略有不同。在 .razor 文件中,我们不能直接通过构造函数注入依赖,而必须使用属性来注入依赖。以下是一个示例:
在 .razor 文件中:
@inject IService MyService
在 .cs 文件中:
[Inject] public IService MyService { get; set; }
在这个例子中,IService 是必须注入的服务,可以通过在 .razor 文件中的 @inject 指令或在 .cs 文件中的 [Inject] 属性实现依赖注入。需要注意的是,在 .cs 文件中可以使用构造函数注入依赖,但在 .razor 文件中不行。
因此,在 Blazor 中,为了实现依赖注入,我们需要根据不同的场景选择不同的注入方式。