Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 63675|Válasz: 8

[.NET mag] ASP.NET Core 3.1 Calling .NET 4.0 WCF Services tutorial

[Linket másol]
Közzétéve 2020. 07. 19. 22:18:08 | | | |
Egy új projekt fejlesztésekor asp.net magtechnológiával a régi projekt lehet WCF szolgáltatás, amelyet a .NET Framework 4-et használtak, mivel a rekonstrukció költsége túl magas, szükséges asp.net magot használni a WCF szolgáltatási interfész meghívásához.

Először is hozz létre két új projektet:

ASP.NET Core 3.1 projekt: dotnet-core-call-wcf
.NET Framework 4 projekt (WCF szolgáltatás alkalmazás): iskolák-wcf-szolgáltatás

A Visual Studio 2019 WCF szolgáltatást szeretne létrehozni, nem találja a sablont, megoldást:

Válassza a Telepít több eszközt és funkciót a Visual Studio Installer megnyitásához. Válaszd ki az Egyéni Komponensek fület, görgess le a Fejlesztési tevékenységek részére, válaszd a Windows Kommunikációs Alapítványt, és kattints a Módosításra.


A WCF két interfészt hoz létre az alábbiak szerint:

Az interfész megvalósítási kódja a következő:


A szolgáltatási szerződés kapcsolódó szolgáltatási műveletek gyűjteménye, és amikor egy ServiceContractAttribute-t alkalmazunk egy interfészen, adunk neki egy szolgáltatási szerződés attribútumot. Azonban egy ilyen típus esetében az idiómája nem válik automatikusan szerződéses szolgáltatási műveletté, és csak akkor válik a megfelelő metódustag szolgáltatási műveletté, amely szolgáltatáshívással érhető el.

Amikor elindítod a wcf projektet, automatikusan fut a WcfTestClient-et, és megpróbálja hívni, ahogy az alábbi ábrán látható:



Használd ASP.NET Core projekteket WCF szolgáltatások hívására

Jobb kattintással a Connected Services menüpontra, válaszd ki a csatlakozást hozzáadni kívánt szolgáltatást, és a WCF szolgáltatást, ahogy az alábbi képen látható:



A szolgáltatási cím kitöltve: http://localhost:3705/Service1.svc

Lehetséges hibák:

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

Mivel lehetetlen a WCF szolgáltatási címet halálra írni, adjuk hozzá a következő kódot a appsettings.json fájlhoz:

Szerkesztse a Startup.cs fájlt, és regisztrálja a WCF szolgáltatást a következő kóddal:

Hívjuk a WCF szolgáltatást a HomeController vezérlőn, az első konstruktor befecskendezése, a kód a következő:

A WCF szolgáltatás hívása:

Futtasd a asp.net Core weboldalt, a hatás az alábbiak szerint van:



Megpróbáljuk módosítani a WCF szolgáltatást úgy, hogy az interfész 3 perc múlva visszaadja az eredményt, majd újraindítjuk asp.net magot, hogy hívjuk a WCF szolgáltatást, és a hiba a következő:

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

Jelenleg módosítanunk kell az alapértelmezett időtúlzást, testreszabni a BasicHttpBinding kötést, és újra szerkeszteni a Startup.cs fájlt a következőképpen kell módosítani:



Forráskód letöltés:

Turisták, ha szeretnétek megnézni ennek a bejegyzésnek a rejtett tartalmát, kérlekVálasz





Előző:Segítség Windows regisztrációs korrupcióhoz
Következő:A VS 2019 svcutil.exe eszközt használ a hívásfájl generálására
Közzétéve 2020. 09. 15. 16:26:41 |
Tanuld meg
Közzétéve 2021. 05. 11. 13:58:38 |
Van egy forráskód főnöke
Közzétéve 2021. 06. 18. 15:07:44 |
Csak hogy lássam
Közzétéve 2021. 06. 18. 15:08:38 |
A kód nem tekinthető meg
Közzétéve 2021. 06. 28. 10:58:22 |
Nem sikerült eredményt elérni, mi történik?
Közzétéve 2021. 07. 04. 10:21:09 |
Gyere vissza, hogy tanulj az istenektől, köszönöm, hogy megosztottad
Közzétéve 2022. 08. 03. 15:36:10 |
Ugyanazokat a szükségleteket, gyere és tanulj
Közzétéve 2022. 12. 02. 1:17:10 |
Tanulj az istenektől
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com