.NET Core中的Unity框架

塔兰

我是.net核心的新手。需要帮助建立统一框架。这是我尝试过的。

我添加了对System.Configuration.ConfigurationManager .net标准V2.0的引用

然后创建app.config

    <?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <!--In older version, Microsoft.Practices.Unity.Configuration.dll is part of older version (around 3.5.1404). In newer version,
    Microsoft.Practices.Unity.Configuration.UnityConfigurationSection class is moved to Unity.Configuration.dll.-->
    <!--<section name="unity" type="Microsoft.Practices.Unity.Configuration.UnityConfigurationSection, Microsoft.Practices.Unity.Configuration"/>-->
    <section name="unity" type="Microsoft.Practices.Unity.Configuration.UnityConfigurationSection, Unity.Configuration"/>
  </configSections>
  <unity xmlns="http://schemas.microsoft.com/practices/2010/unity">
    <!--Old syntax-->
    <!--<typeAliases>
      <typeAlias alias="IDBAccess" type="Interfaces.IDataProvider, Interfaces" />
      <typeAlias alias="SQLDataAccess" type="SQLDataProvider.DataProvider, SQLDataProvider" />
    </typeAliases>-->
    <!--New syntax supported in newer versions. So if above syntax does not work then try below one-->
    <alias alias="IDBAccess" type="Interfaces.IDataProvider, Interfaces" />
    <alias alias="SQLDataAccess" type="SQLDataProvider.DataProvider, SQLDataProvider" />
    <alias alias="OracleDataAccess" type="OracleDataProvider.DataProvider, OracleDataProvider" />
    <containers>
      <container name="DataAccessProvider">
        <register type="IDBAccess" mapTo="SQLDataAccess"/>
        <register type="IDBAccess" mapTo="SQLDataAccess" name="SQLDataAccess" />
        <register type="IDBAccess" mapTo="OracleDataAccess" name="OracleDataAccess" />
      </container>
    </containers>
  </unity>
</configuration>

在课堂上,我尝试读取配置,但得到NULL。

UnityConfigurationSection section =


(UnityConfigurationSection)ConfigurationManager.GetSection("unity");
Ovy.Istrate

如果您是指Unity DI容器框架,则无需进行设置,因为dotnet核心是其自己的IoC DI容器。dotnet核心也使用appSettings.json配置文件。在Startup.cs中应该有以下方法:

public void ConfigureServices(IServiceCollection services) 
{

}

您可以使用services对象配置依赖项,如下所示:

services.AddSingleton<IContract, Contract>();

关于如何配置依赖项,还有其他选择,我刚刚介绍了Singleton,但是您可以从这里开始。

最简单的检查方法是开始一个新项目:

dotnet new mvc -n testProj

并检查Startup.cs文件,向其添加接口,实现,然后将其注册到IServiceCollection实例中。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

.Net 框架与 .Net Core

使用Identity Core的ASP.NET MVC框架中的身份

.NET Core中的内存数据库与Moqing框架

.net core 3.1未在目标框架中列出

实体框架:更新记录,包括在Net Core 3中

.NET Core 3.0的MVVM框架

实体框架.NET Core问题

在.net Core 2解决方案中引用.net 4.7框架程序集

在.NET Core 2中引用依赖ConfigurationManager的.net框架程序集

从.Net Core无状态服务中调用.Net框架Service Fabric Actor

在.net core和.net框架中搜索提供不同输出的注册表项

在Unity脚本中使用NET框架

在.net core和.net框架中使用.net标准包

使用ASP.NET Core中的联接查询在实体框架中获取用户角色

实体框架单向关系.Net Core 3.1

ASP.NET Core 5.0的模拟框架

了解.NET Core和实体框架的版本

ASP .NET Core实体框架的范围

如何在Visual Studio中的.NET Core项目的目标框架之间切换

使用 MSSQL 和 .Net Core 避免实体框架中的重复条目

Visual Studio 2017目标框架中未列出的ASP Net Core 2.1

在asp net core实体框架mvc中从数据库绑定菜单和子菜单

更新ASP.NET Core实体框架中的实体类

带有实体框架的ASP.NET Core MVC中的索引方法不接受参数

如何在.NET Core 3.0实体框架中执行组联接?

在.NET Core中设置自定义<OutputPath>(停止添加框架目标)?

.Net Core中的通用存储库模式与实体框架有什么关系

为什么.Net Core 3.1无法在Visual Studio Community Edition 2017中用作目标框架

ASP.Net Core - 实体框架 - 调用没有返回数据的存储过程(在 void 方法中)