在ServiceCollection中注册简单类

时间:2016-04-13 15:46:18

标签: c# dependency-injection asp.net-core

在我们的应用程序中,我们有时需要一些关于用户上下文(动态填充)或数据库连接字符串的信息(这是动态的,因此不在appsettings.json中)。这些类非常简单,只包含属性,没有方法。因此,我们希望利用依赖注入的优势,并在需要时将这些数据注入我们的服务中。我们的问题是: - 选项模式是解决方案吗? - 关于这种模式:为什么总是直接注入IOptions而不是MyType?

1 个答案:

答案 0 :(得分:0)

IOptions主要用于从配置文件注册依赖项,您可以直接注册类而不需要这样做,您只需要为您注册的每个类注册任何依赖项对象

这是一个直接注册课程的例子

<style name="MyTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="colorPrimary">@color/white</item>
    <item name="colorPrimaryDark">@color/gray_dark</item>
    <item name="colorAccent">@color/green</item>
    <item name="actionMenuTextColor">@color/gray_dark</item>
</style>

<style name="MyTheme.GreenButton" parent="Widget.AppCompat.Button">
    <item name="android:background">@drawable/green_button</item>
    <item name="android:textColor">@color/white</item>
    <item name="android:textSize">18sp</item>
</style>