Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 63675|Odpoveď: 8

[.NET Core] ASP.NET Core 3.1 Call .NET 4.0 WCF Services tutoriál

[Kopírovať odkaz]
Zverejnené 19. 7. 2020 22:18:08 | | | |
Pri vývoji nového projektu s využitím asp.net jadrovej technológie môže byť starý projekt WCF službou vyvinutú pomocou .NET Framework 4, pretože náklady na rekonštrukciu sú príliš vysoké, je potrebné použiť asp.net jadro na volanie rozhrania služby WCF.

Najprv vytvorte dva nové projekty:

ASP.NET Projekt Core 3.1: dotnet-core-call-wcf
.NET Framework 4 projekt (WCF service application): schools-wcf-service

Visual Studio 2019 chce vytvoriť WCF službu, nemôžem nájsť šablónu, riešenie:

Vyberte Nainštalovať viac nástrojov a funkcií na otvorenie inštalátora Visual Studio. Vyberte záložku Jednotlivé komponenty, posuňte sa nižšie na Vývojové aktivity, vyberte Windows Communication Foundation a kliknite na Modifikovať.


WCF vytvára dve rozhrania nasledovne:

Kód implementácie rozhrania je nasledovný:


Servisná zmluva je súbor súvisiacich servisných operácií a keď aplikujeme ServiceContractAttribute na rozhranie, pridelíme mu atribút servisnej zmluvy. Avšak pre takýto typ sa jeho idiom automaticky nestáva zmluvnou servisnou operáciou a až keď sa aplikuje funkcia OperationContractAttributes, sa príslušný člen metódy môže stať servisnou operáciou, ku ktorej je možné pristupovať servisným volaním.

Keď spustíte wcf projekt, automaticky spustí WcfTestClient a pokúsi sa ho zavolať, ako je znázornené na obrázku nižšie:



Použite ASP.NET Core projekty na volanie služieb WCF

Kliknite pravým tlačidlom na Pripojené služby, vyberte službu, ku ktorej chcete pridať pripojenie, a vyberte službu WCF, ako je znázornené na nasledujúcom obrázku:



Adresa služby vyplnená: http://localhost:3705/Service1.svc

Možné chyby:

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

Keďže nie je možné zapísať adresu služby WCF do smrti, pridajte do appsettings.json súboru nasledujúci kód:

Upravte Startup.cs súbor a zaregistrujte službu WCF s nasledujúcim kódom:

Zavolajte službu wcf na radiči HomeController, prvá injekcia konštruktora, kód je nasledovný:

Volanie služby WCF:

Prevádzkujte webovú stránku asp.net Core, efekt je zobrazený nižšie:



Snažíme sa upraviť službu WCF tak, aby rozhranie vrátilo výsledok po 3 minútach, a potom reštartujeme asp.net jadro na zavolanie služby WCF, pričom chyba je nasledovná:

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.)

V tejto chvíli potrebujeme upraviť predvolený časový limit, prispôsobiť viazanie BasicHttpBinding a znovu upraviť Startup.cs súbor, nasledovne:



Stiahnutie zdrojového kódu:

Turisti, ak chcete vidieť skrytý obsah tohto príspevku, prosím.Odpoveď





Predchádzajúci:Pomoc s poškodením registra Windows
Budúci:VS 2019 používa svcutil.exe nástroje na generovanie volacieho súboru
Zverejnené 15. 9. 2020 16:26:41 |
Nauč sa to
Zverejnené 11. 5. 2021 13:58:38 |
Existuje šéf zdrojového kódu
Zverejnené 18. 6. 2021 15:07:44 |
Len aby som videl
Zverejnené 18. 6. 2021 15:08:38 |
Kód nie je možné zobraziť
Zverejnené 28. 6. 2021 10:58:22 |
Zatiaľ som nedostal žiadne výsledky, čo sa deje?
Zverejnené 4. 7. 2021 10:21:09 |
Vráťte sa a učite sa od bohov, ďakujem, že ste sa podelili
Zverejnené 3. 8. 2022 15:36:10 |
Tie isté potreby, príďte sa učiť
Zverejnené 2. 12. 2022 1:17:10 |
Uč sa od bohov
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com