簡體   English   中英

我可以在wpf應用程序中使用網絡核心庫嗎?

[英]Can I use a net core library in a wpf application?

我正在嘗試開發一個非常簡單的WCF應用程序。 WCF服務器將位於Windows 10計算機中,我想通過Windows 10計算機中的WPF應用程序使用此服務,並且我還希望使用Xamarin擁有另一個適用於Android的應用程序。

在Visual Studio中,我看到可以創建一個Net Core庫,並且看到Net core與WCF兼容, 我可以在此Web中看到

我也知道Net Core可以在Windows,Linux和Mac中運行。 因此,我想知道是否可以開發一個Net core庫來開發客戶端,以便可以在WPF和Android應用程序中使用它。

我的疑問是,當我在WPF應用程序中向Net Core庫項目添加引用時,看到一個黃色三角形,一個警告,因此我猜WPF無法使用Net Core庫。

所以我在想,也許對於WCF層,我必須創建一個可由WPF應用程序和Android應用程序使用的Net Standard項目。 但是我想知道這是唯一的方法還是WPF應用程序可以某種方式使用Net Core庫而無需使用諸如Net Standard之類的中間項目。

對於服務器,我也考慮使用Net Core,因為其他任何項目都不會引用該項目,並且Windows中可以使用Net Core。

好了,您應該創建一個.Net標准類庫(因此, 不是 .Net Core),在其中放置WCF客戶端代碼,然后可以從.Net Core或.Net Full項目中引用它。 .Net標准類庫將為您提供最大的靈活性,因此它是共享庫的推薦項目類型。

但是根據文檔,請參閱最后一行,您將需要在服務器端使用.Net Full:

WCF服務應用程序仍應使用完整的.NET Framework版本創建。

但是我想知道這是唯一的方法還是WPF應用程序可以某種方式使用Net Core庫而無需使用諸如Net Standard之類的中間項目。

否。面向.NET Framework的WPF應用程序無法引用.NET Core項目。

當前處於預覽狀態的 .NET Core 3確實支持WPF,這意味着您可以從以.NET Core為目標的WPF應用程序中引用.NET Core項目。 但是,面向.NET Framework的應用程序無法引用針對.NET Core的庫,反之亦然。

您應該更喜歡在類庫項目中定位.NET Standard,因為它們可以從面向.NET Framework或.NET Core的應用程序中使用。

.Net Core平台尚不支持WPF / Winforms應用程序。

當下:

到目前為止,我的意思是.Net core 2.x版本。

因此,如果您的應用程序不基於.net core的2.x標准,則將無法引用.net core程序集。

未來:

.Net核心3預覽可用,而.Net核心平台上現在提供Winforms / WPF應用程序。

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM