|
|
|
@ -1319,7 +1319,7 @@
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"cell_type": "code",
|
|
|
|
|
"execution_count": 38,
|
|
|
|
|
"execution_count": null,
|
|
|
|
|
"metadata": {
|
|
|
|
|
"dotnet_interactive": {
|
|
|
|
|
"language": "csharp"
|
|
|
|
@ -1403,7 +1403,7 @@
|
|
|
|
|
"\n",
|
|
|
|
|
"// 方式1(不推荐):类型化客户端:直接注入IoC,并从中获取实例。优点是范围可以自己选择。\n",
|
|
|
|
|
"{\n",
|
|
|
|
|
" Console.WriteLine(\"方式1 -------------------------------------------------------------------\");\n",
|
|
|
|
|
" Console.WriteLine(\"方式1 直接注入IoC ------------------------------------------------------\");\n",
|
|
|
|
|
" var services = new ServiceCollection();\n",
|
|
|
|
|
" services.AddSingleton<HttpClientServiceA>(b => \n",
|
|
|
|
|
" { \n",
|
|
|
|
@ -1424,12 +1424,12 @@
|
|
|
|
|
" var dataB = await serverB.PingAsync();\n",
|
|
|
|
|
" Console.WriteLine(dataB);\n",
|
|
|
|
|
"\n",
|
|
|
|
|
" Console.WriteLine(\"========================================================================\");\n",
|
|
|
|
|
" Console.WriteLine(\"==============================结束======================================\");\n",
|
|
|
|
|
"}\n",
|
|
|
|
|
"\n",
|
|
|
|
|
"// 方式2:类型化客户端:AddHttpClient<>() 设置\n",
|
|
|
|
|
"{\n",
|
|
|
|
|
" Console.WriteLine(\"方式2 -------------------------------------------------------------------\");\n",
|
|
|
|
|
" Console.WriteLine(\"方式2 AddHttpClient<>() 设置---------------------------------------------\");\n",
|
|
|
|
|
" var services = new ServiceCollection();\n",
|
|
|
|
|
" services\n",
|
|
|
|
|
" .AddHttpClient<HttpClientServiceA>()\n",
|
|
|
|
@ -1455,12 +1455,12 @@
|
|
|
|
|
" var dataB = await serverB.PingAsync();\n",
|
|
|
|
|
" Console.WriteLine(dataB);\n",
|
|
|
|
|
"\n",
|
|
|
|
|
" Console.WriteLine(\"========================================================================\");\n",
|
|
|
|
|
" Console.WriteLine(\"==============================结束======================================\");\n",
|
|
|
|
|
"}\n",
|
|
|
|
|
"\n",
|
|
|
|
|
"// 方式3:类型化客户端:结合工厂,由工厂从统一配置中提供类型化客户端中使用的HttpClient实例。\n",
|
|
|
|
|
"{\n",
|
|
|
|
|
" Console.WriteLine(\"方式3 -------------------------------------------------------------------\");\n",
|
|
|
|
|
" Console.WriteLine(\"方式3 结合工厂-----------------------------------------------------------\");\n",
|
|
|
|
|
" var services = new ServiceCollection();\n",
|
|
|
|
|
" services.AddHttpClient<HttpClientServiceA>(client => \n",
|
|
|
|
|
" {\n",
|
|
|
|
@ -1502,7 +1502,7 @@
|
|
|
|
|
" var dataB2 = await serviceB2.PingAsync();\n",
|
|
|
|
|
" Console.WriteLine(dataB2);\n",
|
|
|
|
|
"\n",
|
|
|
|
|
" Console.WriteLine(\"========================================================================\");\n",
|
|
|
|
|
" Console.WriteLine(\"==============================结束======================================\");\n",
|
|
|
|
|
"}"
|
|
|
|
|
]
|
|
|
|
|
},
|
|
|
|
|