Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 63675|Atbildi: 8

[.NET kodols] ASP.NET Core 3.1 izsaukšanas .NET 4.0 WCF pakalpojumu apmācība

[Kopēt saiti]
Publicēts 19.07.2020 22:18:08 | | | |
Izstrādājot jaunu projektu, izmantojot asp.net pamattehnoloģiju, vecais projekts var būt WCF pakalpojums, kas izstrādāts, izmantojot .NET Framework 4, jo rekonstrukcijas izmaksas ir pārāk augstas, ir nepieciešams izmantot asp.net kodolu, lai izsauktu WCF pakalpojuma saskarni.

Vispirms izveidojiet divus jaunus projektus:

ASP.NET Core 3.1 projekts: dotnet-core-call-wcf
.NET Framework 4 projekts (WCF pakalpojuma lietojumprogramma): schools-wcf-service

Visual Studio 2019 vēlas izveidot WCF pakalpojumu, nevar atrast veidni, risinājumu:

Atlasiet Instalēt citus rīkus un līdzekļus, lai atvērtu Visual Studio Installer. Atlasiet cilni Atsevišķi komponenti, ritiniet uz leju līdz Izstrādes darbības, atlasiet Windows Communication Foundation un noklikšķiniet uz Modificēt.


WCF izveido divas saskarnes šādi:

Saskarnes ieviešanas kods ir šāds:


Pakalpojumu līgums ir saistītu pakalpojumu operāciju kopums, un, lietojot interfeisā ServiceContractAttribute, mēs tam piešķiram pakalpojuma līguma atribūtu. Tomēr šādam tipam tā idioma automātiski nekļūst par līguma pakalpojuma operāciju, un tikai tad, ja tiek lietots līdzeklis OperationContractAttribute, atbilstošais metodes dalībnieks var kļūt par pakalpojuma operāciju, kurai var piekļūt ar pakalpojuma izsaukumu.

Sākot wcf projektu, tas automātiski palaiž WcfTestClient un mēģinās to izsaukt, kā parādīts zemāk redzamajā attēlā:



ASP.NET Core projektu izmantošana, lai izsauktu WCF pakalpojumus

Ar peles labo pogu noklikšķiniet uz Savienotie pakalpojumi, atlasiet pakalpojumu, kuram vēlaties pievienot savienojumu, un atlasiet WCF pakalpojums, kā parādīts šajā attēlā:



Aizpildītā pakalpojuma adrese: http://localhost:3705/Service1.svc

Iespējamās kļūdas:

WCF:Error:Unable to generate deps.json
https://www.itsvse.com/thread-9288-1-1.html

Tā kā nav iespējams uzrakstīt WCF pakalpojuma adresi līdz nāvei, appsettings.json failam pievienojiet šādu kodu:

Rediģējiet Startup.cs failu un reģistrējiet WCF pakalpojumu ar šādu kodu:

Zvaniet uz wcf pakalpojumu HomeController kontrolierī, pirmā konstruktora injekcija, kods ir šāds:

Zvanīšana uz WCF dienestu:

Palaidiet asp.net Core vietni, efekts ir šāds:



Mēs cenšamies modificēt WCF pakalpojumu tā, lai saskarne atgrieztu rezultātu pēc 3 minūtēm, un pēc tam restartējiet asp.net kodolu, lai izsauktu WCF pakalpojumu, un kļūda ir šāda:

AggregateException: One or more errors occurred. (The request channel timed out attempting to send after 00:01:00. Increase the timeout value passed to the call to Request or increase the SendTimeout value on the Binding. The time allotted to this operation may have been a portion of a longer timeout.)

Šobrīd mums ir jāmaina noklusējuma taimauts, jāpielāgo BasicHttpBinding saistīšana un atkārtoti jārediģē Startup.cs fails šādi:



Avota koda lejupielāde:

Tūristi, ja vēlaties redzēt šīs ziņas slēpto saturu, lūdzuAtbildi





Iepriekšējo:Palīdzība ar Windows reģistra bojājumiem
Nākamo:VS 2019 izmanto svcutil.exe rīkus, lai ģenerētu zvana failu
Publicēts 15.09.2020 16:26:41 |
Uzziniet to
Publicēts 11.05.2021 13:58:38 |
Ir pirmkoda priekšnieks
Publicēts 18.06.2021 15:07:44 |
Tikai lai redzētu
Publicēts 18.06.2021 15:08:38 |
Kodu nevar apskatīt
Publicēts 28.06.2021 10:58:22 |
Es neesmu spējis iegūt nekādus rezultātus, kas notiek?
Publicēts 04.07.2021 10:21:09 |
Atgriezieties, lai mācītos no dieviem, paldies, ka dalījāties
Publicēts 03.08.2022 15:36:10 |
Tās pašas vajadzības, nāciet un mācieties
Publicēts 02.12.2022 01:17:10 |
Mācieties no dieviem
Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com