当前位置: 代码网 > it编程>编程语言>Asp.net > dotnet 简单方法在一个进程内同时跑起 WPF 和 ASP.NET Core 框架

dotnet 简单方法在一个进程内同时跑起 WPF 和 ASP.NET Core 框架

2024年05月16日 Asp.net 我要评论
从设计架构上,无论是 WPF 还是 ASP.NET Core 框架,都是在 dotnet 运行时上层的应用,两个框架处于平级的结构。理论上讲,两个平级的框架只要不存在特殊的情况,都是能够相容存在的。本文将和大家介绍一个非常简单的方法,在一个进程内同时跑起 WPF 和 ASP.NET Core 框架 ...

从设计架构上,无论是 wpf 还是 asp.net core 框架,都是在 dotnet 运行时上层的应用,两个框架处于平级的结构。理论上讲,两个平级的框架只要不存在特殊的情况,都是能够相容存在的。本文将和大家介绍一个非常简单的方法,在一个进程内同时跑起 wpf 和 asp.net core 框架

在一个进程内同时跑起 wpf 和 asp.net core 框架在一些业务情况下还是一个不错的选择。比如以 asp.net core 框架为主,让 wpf 作为状态展示的界面。比如以 wpf 为主,让 asp.net core 框架充当应用对外接口,比如多应用之间的通讯等。更多的用法还请发挥你的想象力

只有将 wpf 更新到使用 dotnet core 版本(包含 dotnet 5 、dotnet 6 等等)即可非常简单和 asp.net core 框架在一起跑。接下来我给出一张截图,说不定大家看到了截图就知道了实现方式了

如上图,我在 wpf 应用的按钮里面点击的时候,启动了 asp.net core 框架

具体的实现方法是:

  1. 将 wpf 和 asp.net core 分别定义为两个项目。或者是再多定义一个控制台项目作为入口项目
  2. 让 wpf 项目引用 asp.net core 项目。或者是有控制台入口项目的情况下,让控制台入口项目同时引用 wpf 和 asp.net core 项目
  3. 找到时机分别启动 wpf 应用和 asp.net core 主机

虽然新建了多个项目,但运行起来只有一个进程。这里需要敲黑板,项目的数量影响的是程序集,不直接影响进程的数量

比如上图给出的方法就是只新建 wpf 和 asp.net core 项目,接着在 wpf 项目的按钮点击事件里面,调用到 asp.net core 项目的 main 静态函数里面,将 asp.net core 的主机启动

启动 asp.net core 的主机需要使用 task.run 的方式,如果不想 task.run 的方式,可以将 asp.net core 的 host 执行从 run 方法换成 runasync 方法走异步

如此简单的方式即可在一个进程里面同时使用 wpf 和 asp.net core 框架

本文的代码放在githubgitee 欢迎访问

可以通过如下方式获取本文的源代码,先创建一个空文件夹,接着使用命令行 cd 命令进入此空文件夹,在命令行里面输入以下代码,即可获取到本文的代码

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

以上使用的是 gitee 的源,如果 gitee 不能访问,请替换为 github 的源。请在命令行继续输入以下代码

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

获取代码之后,进入 hefebehairhercheaconem 文件夹

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com