From 8efecb3841090747621165d4bd7220daa8c00a92 Mon Sep 17 00:00:00 2001 From: personball Date: Tue, 18 Dec 2018 19:44:56 +0800 Subject: [PATCH 1/3] translate zh-Hans/Autofac-Integration.md --- docs/zh-Hans/Autofac-Integration.md | 84 +++++++++++++++++++++++++++++ 1 file changed, 84 insertions(+) create mode 100644 docs/zh-Hans/Autofac-Integration.md diff --git a/docs/zh-Hans/Autofac-Integration.md b/docs/zh-Hans/Autofac-Integration.md new file mode 100644 index 0000000000..dfba1218f2 --- /dev/null +++ b/docs/zh-Hans/Autofac-Integration.md @@ -0,0 +1,84 @@ +# 集成 Autofac + +Autofac 是.Net世界中最常用的依赖注入框架之一. 相比.Net Core标准的依赖注入库, 它提供了更多高级特性, 比如动态代理和属性注入. + +## 安装 Autofac + +> 所有的启动模板和示例都已经集成了 Autofac. 所以, 多数时候你无需手动安装这个包. + +安装 [Volo.Abp.Autofac](https://www.nuget.org/packages/Volo.Abp.Autofac) nuget 包到你的项目 (对于一个多项目应用程序, 建议安装到可执行项目或者Web项目中.) + +```` +Install-Package Volo.Abp.Autofac +```` + +然后为你的模块添加 `AbpAutofacModule` 依赖: + +```csharp +using Volo.Abp.Modularity; +using Volo.Abp.Autofac; + +namespace MyCompany.MyProject +{ + [DependsOn(typeof(AbpAutofacModule))] + public class MyModule : AbpModule + { + //... + } +} +``` + +最后, 配置 `AbpApplicationCreationOptions` 用 Autofac 替换默认的依赖注入服务. 根据应用程序类型,情况有所不同. + +### ASP.NET Core 应用程序 + +如下所示,在 **Startup.cs** 文件中调用 `UseAutofac()`: + +````csharp +public class Startup +{ + public IServiceProvider ConfigureServices(IServiceCollection services) + { + services.AddApplication(options => + { + //Integrate Autofac! + options.UseAutofac(); + }); + + return services.BuildServiceProviderFromFactory(); + } + + public void Configure(IApplicationBuilder app) + { + app.InitializeApplication(); + } +} +```` + +### 控制台应用程序 + +如下所示,在 `AbpApplicationFactory.Create` 中用options调用 `UseAutofac()` 方法: + +````csharp +using System; +using Microsoft.Extensions.DependencyInjection; +using Volo.Abp; + +namespace AbpConsoleDemo +{ + class Program + { + static void Main(string[] args) + { + using (var application = AbpApplicationFactory.Create(options => + { + options.UseAutofac(); //Autofac integration + })) + { + //... + } + } + } +} +```` + From 7737acbe743709ce6e52bb7ccf2c9fe70ae92d2b Mon Sep 17 00:00:00 2001 From: personball Date: Tue, 18 Dec 2018 19:52:52 +0800 Subject: [PATCH 2/3] fix comma --- docs/zh-Hans/Autofac-Integration.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/zh-Hans/Autofac-Integration.md b/docs/zh-Hans/Autofac-Integration.md index dfba1218f2..9b1d249e4e 100644 --- a/docs/zh-Hans/Autofac-Integration.md +++ b/docs/zh-Hans/Autofac-Integration.md @@ -28,11 +28,11 @@ namespace MyCompany.MyProject } ``` -最后, 配置 `AbpApplicationCreationOptions` 用 Autofac 替换默认的依赖注入服务. 根据应用程序类型,情况有所不同. +最后, 配置 `AbpApplicationCreationOptions` 用 Autofac 替换默认的依赖注入服务. 根据应用程序类型, 情况有所不同. ### ASP.NET Core 应用程序 -如下所示,在 **Startup.cs** 文件中调用 `UseAutofac()`: +如下所示, 在 **Startup.cs** 文件中调用 `UseAutofac()`: ````csharp public class Startup @@ -57,7 +57,7 @@ public class Startup ### 控制台应用程序 -如下所示,在 `AbpApplicationFactory.Create` 中用options调用 `UseAutofac()` 方法: +如下所示, 在 `AbpApplicationFactory.Create` 中用options调用 `UseAutofac()` 方法: ````csharp using System; From 40754f7f7984b23e2d58fdf88e29ac1c7dca9687 Mon Sep 17 00:00:00 2001 From: maliming Date: Wed, 19 Dec 2018 10:05:49 +0800 Subject: [PATCH 3/3] Update docs-nav.json --- docs/zh-Hans/docs-nav.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/zh-Hans/docs-nav.json b/docs/zh-Hans/docs-nav.json index 362e6fbc65..6d66e651ec 100644 --- a/docs/zh-Hans/docs-nav.json +++ b/docs/zh-Hans/docs-nav.json @@ -49,7 +49,8 @@ "path": "Dependency-Injection.md", "items": [ { - "text": "AutoFac 集成" + "text": "AutoFac 集成", + "path": "Autofac-Integration.md" } ] }, @@ -251,4 +252,4 @@ "path": "Contribution/Index.md" } ] -} \ No newline at end of file +}