国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

dotnet 簡單方法在一個進(jìn)程內(nèi)同時跑起 WPF 和 ASP.NET Core 框架

這篇具有很好參考價值的文章主要介紹了dotnet 簡單方法在一個進(jìn)程內(nèi)同時跑起 WPF 和 ASP.NET Core 框架。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

從設(shè)計架構(gòu)上,無論是 WPF 還是 ASP.NET Core 框架,都是在 dotnet 運行時上層的應(yīng)用,兩個框架處于平級的結(jié)構(gòu)。理論上講,兩個平級的框架只要不存在特殊的情況,都是能夠相容存在的。本文將和大家介紹一個非常簡單的方法,在一個進(jìn)程內(nèi)同時跑起 WPF 和 ASP.NET Core 框架

在一個進(jìn)程內(nèi)同時跑起 WPF 和 ASP.NET Core 框架在一些業(yè)務(wù)情況下還是一個不錯的選擇。比如以 ASP.NET Core 框架為主,讓 WPF 作為狀態(tài)展示的界面。比如以 WPF 為主,讓 ASP.NET Core 框架充當(dāng)應(yīng)用對外接口,比如多應(yīng)用之間的通訊等。更多的用法還請發(fā)揮你的想象力

只有將 WPF 更新到使用 dotnet core 版本(包含 dotnet 5 、dotnet 6 等等)即可非常簡單和 ASP.NET Core 框架在一起跑。接下來我給出一張截圖,說不定大家看到了截圖就知道了實現(xiàn)方式了

dotnet 簡單方法在一個進(jìn)程內(nèi)同時跑起 WPF 和 ASP.NET Core 框架

如上圖,我在 WPF 應(yīng)用的按鈕里面點擊的時候,啟動了 ASP.NET Core 框架

具體的實現(xiàn)方法是:

  1. 將 WPF 和 ASP.NET Core 分別定義為兩個項目?;蛘呤窃俣喽x一個控制臺項目作為入口項目
  2. 讓 WPF 項目引用 ASP.NET Core 項目?;蛘呤怯锌刂婆_入口項目的情況下,讓控制臺入口項目同時引用 WPF 和 ASP.NET Core 項目
  3. 找到時機分別啟動 WPF 應(yīng)用和 ASP.NET Core 主機

雖然新建了多個項目,但運行起來只有一個進(jìn)程。這里需要敲黑板,項目的數(shù)量影響的是程序集,不直接影響進(jìn)程的數(shù)量

比如上圖給出的方法就是只新建 WPF 和 ASP.NET Core 項目,接著在 WPF 項目的按鈕點擊事件里面,調(diào)用到 ASP.NET Core 項目的 Main 靜態(tài)函數(shù)里面,將 ASP.NET Core 的主機啟動

啟動 ASP.NET Core 的主機需要使用 Task.Run 的方式,如果不想 Task.Run 的方式,可以將 ASP.NET Core 的 Host 執(zhí)行從 Run 方法換成 RunAsync 方法走異步

如此簡單的方式即可在一個進(jìn)程里面同時使用 WPF 和 ASP.NET Core 框架

本文的代碼放在github 和 gitee 歡迎訪問

可以通過如下方式獲取本文的源代碼,先創(chuàng)建一個空文件夾,接著使用命令行 cd 命令進(jìn)入此空文件夾,在命令行里面輸入以下代碼,即可獲取到本文的代碼

git init
git remote add origin https://gitee.com/lindexi/lindexi_gd.git
git pull origin 0bb1705e0118208f4134b5334ace9ee84270eb5f

以上使用的是 gitee 的源,如果 gitee 不能訪問,請?zhí)鎿Q為 github 的源。請在命令行繼續(xù)輸入以下代碼

git remote remove origin
git remote add origin https://github.com/lindexi/lindexi_gd.git
git pull origin 0bb1705e0118208f4134b5334ace9ee84270eb5f

獲取代碼之后,進(jìn)入 HefebehairHercheaconem 文件夾文章來源地址http://www.zghlxwxcb.cn/news/detail-858666.html

到了這里,關(guān)于dotnet 簡單方法在一個進(jìn)程內(nèi)同時跑起 WPF 和 ASP.NET Core 框架的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • [WPF]動手寫一個簡單的消息對話框

    [WPF]動手寫一個簡單的消息對話框

    消息對話框是UI界面中不可或缺的組成部分,用于給用戶一些提示,警告或者詢問的窗口。在WPF中,消息對話框是系統(tǒng)原生(user32.dll)的MessageBox,無法通過Style或者Template來修改消息對話框的外觀。因此,當(dāng)需要一個與應(yīng)用程序主題風(fēng)格一致的消息對話框時,只能自己動手造

    2024年02月05日
    瀏覽(22)
  • dotnet 的跨平臺 UI 框架:WPF 的精神繼承 | 開源日報 No.123

    dotnet 的跨平臺 UI 框架:WPF 的精神繼承 | 開源日報 No.123

    Stars: 20.7k License: MIT Avalonia 是 dotnet 的跨平臺 UI 框架,提供靈活的樣式系統(tǒng),并支持 Windows、macOS、Linux、iOS、Android 和 WebAssembly 等多種平臺。它被許多人認(rèn)為是 WPF 的精神繼承者,為 XAML 開發(fā)人員創(chuàng)建跨平臺應(yīng)用程序提供了熟悉且現(xiàn)代化的開發(fā)體驗。Avalonia XPF 可以使 WPF 應(yīng)用在

    2024年02月03日
    瀏覽(123)
  • [Linux]進(jìn)程控制精講,簡單實現(xiàn)一個shell

    [Linux]進(jìn)程控制精講,簡單實現(xiàn)一個shell

    目錄 前言 進(jìn)程創(chuàng)建 fork函數(shù)初識 寫時拷貝 fork常見用法 fork調(diào)用失敗的原因 進(jìn)程終止 進(jìn)程退出場景 進(jìn)程退出碼 查看進(jìn)程退出碼 退出碼的含義 進(jìn)程常見退出方法 exit VS _exit exit函數(shù) _exit函數(shù) 二者的區(qū)別 return退出 進(jìn)程等待 進(jìn)程等待必要性 進(jìn)程等待的方法 wait方法 waitpid方法

    2023年04月26日
    瀏覽(15)
  • Mybatis 與Mybatis-plus同時引入同一個項目中配置方法

    原項目系統(tǒng)中已經(jīng)引入了 Mybatis 和 pagehelper ,當(dāng)引入Mybatis-plus 后啟動項目報錯 SqlSessionFactory 錯誤,排查原因后為依賴沖突導(dǎo)致,需排除部分jar包,并修改相關(guān)配置。 1.mybatis中 2. pagehelper 中 3.引入Mybatis-plus 4.引入autoconfigure 5. 修改配置文件,將原 mybatis 改成 mybatis-plus。根據(jù)自

    2024年02月16日
    瀏覽(91)
  • 【Linux】教你用進(jìn)程替換制作一個簡單的Shell解釋器

    【Linux】教你用進(jìn)程替換制作一個簡單的Shell解釋器

    本章的代碼可以訪問這里獲取。 由于程序代碼是一體的,本章在分開講解各部分的實現(xiàn)時,代碼可能有些跳躍,建議在講解各部分實現(xiàn)后看一下源代碼方便理解程序。 我們想要制作一個簡單的 Shell 解釋器,需要先觀察Shell是怎么運行的,根據(jù) Shell 的運行狀態(tài)我們再去進(jìn)行模

    2024年02月02日
    瀏覽(112)
  • vue同時請求多個接口,接口請求完成后在處理下一個方法(Promise.all用法)

    Promise .all()方法用于將多個 Promise 實例,包裝成一個新的 Promise 實例。 在處理多個異步處理時非常有用,比如說一個頁面上需要等兩個或多個ajax的數(shù)據(jù)回來以后才正常顯示。 需要特別注意的是,Promise.all獲得的成功結(jié)果的數(shù)組里面的數(shù)據(jù)順序和Promise.all接收到的數(shù)組順序是一

    2024年02月13日
    瀏覽(22)
  • Windows上獲取父進(jìn)程的一種簡單方法

    測試平臺:win10 專業(yè)版 21H2 1904 編譯平臺:gcc version 12.2.0 (x86_64-posix-seh-rev2, Built by MinGW-W64 project) 代碼如下:

    2024年02月11日
    瀏覽(19)
  • dotnet 推薦一個使用 Json 直接路由通訊的 IPC 庫

    本文將和大家推薦一個我所在團(tuán)隊開源的本機多進(jìn)程通訊 IPC 庫,此 IPC 支持使用 JSON 格式進(jìn)行直接路由通訊,具有使用方便,穩(wěn)定性高,性能好的優(yōu)點 這是我所在的團(tuán)隊在 GitHub 上使用最友好的 MIT 協(xié)議完全開源的項目:https://github.com/dotnet-campus/dotnetCampus.Ipc 這個開源項目開

    2024年02月08日
    瀏覽(17)
  • 三.net core 自動化發(fā)布到docker (創(chuàng)建一個dotnet工程發(fā)布)

    三.net core 自動化發(fā)布到docker (創(chuàng)建一個dotnet工程發(fā)布)

    輸入名稱(建議不要帶“+”這類的字符),選擇自由風(fēng)格的類型(紅框標(biāo)注的),點擊確定 ? ? 用于測試,下面選項基本沒有選擇-配置代碼地址 ? ? 選擇執(zhí)行shell ? ? #!/bin/bash # 獲取短版本號 GITHASH=`git rev-parse --short HEAD` echo ---------------開始編譯程序...------------------ echo ----

    2024年02月12日
    瀏覽(22)
  • WPF+ASP.NET SignalR實現(xiàn)簡易在線聊天功能

    WPF+ASP.NET SignalR實現(xiàn)簡易在線聊天功能

    在實際業(yè)務(wù)中,當(dāng)后臺數(shù)據(jù)發(fā)生變化,客戶端能夠?qū)崟r的收到通知,而不是由用戶主動的進(jìn)行頁面刷新才能查看,這將是一個非常人性化的設(shè)計。有沒有那么一種場景,后臺數(shù)據(jù)明明已經(jīng)發(fā)生變化了,前臺卻因為沒有及時刷新,而導(dǎo)致頁面顯示的數(shù)據(jù)與實際存在差異,從而造

    2024年02月07日
    瀏覽(19)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包