.Net Core3 用Windows 桌面应用开发Asp.Net Core网站

建站知识 2025-04-06 03:38www.168986.cn长沙网站建设

并创新:利用.NET Core 3在Windows桌面应用上构建Asp.Net Core网站的新体验

文章前传:

一直以来,开发者们在构建Asp.Net网站时往往被束缚在IIS上。当我们梦想在Windows桌面上运行Web服务器时,总觉得像是在一个封闭的圈子里打转。随着.NET Core 3的诞生,这一局面得以改变。本文将带您领略如何利用.NET Core 3在Windows桌面应用上构建Asp.Net Core网站的新体验。

一、开篇介绍

在开发Asp.Net网站时,我们曾梦想有一个自由的Web服务器,像桌面应用一样在Windows桌面上运行。现在,借助.NET Core 3的强力支持,这一梦想得以实现。本文将介绍如何使用.NET Core 3进行Windows桌面应用开发,并构建一个Asp.Net Core网站。

二、项目概述

本文介绍的项目是一个结合了Asp.Net Core网站和Windows桌面应用的创新项目。我们将使用Microsoft.NET.Sdk.WindowsDesk SDK进行Windows桌面应用开发,同时使用Microsoft.NET.Sdk.Web SDK进行Asp.Net Core网站的开发。我们将展示如何将这两个项目结合起来,创建一个可在Windows桌面上运行的Asp.Net Core网站。

三、项目设置与实施

下载项目源代码(注意选择NetCore_3.0分支)。确保使用VS 2019 16.4.0以上版本,并安装.NET Core 3.1 SDK。打开解决方案后,按照以下步骤进行操作:

1. 卸载暂时没用的项目,避免生成失败。

2. 修改代码,具体步骤如图所示。

3. 还原解决方案的Nuget包以及IdentityServer的npm包。

4. 发布IdentityServer和IdentityServerGui项目,将发布的内容合并到一个文件夹中。

5. 双击运行IdentityServerGui.exe,即可看到效果。

四、原理讲解

这个项目的关键在于理解Asp.Net Core网站实际上是一个标准的.Net程序集,可以像类库一样被引用。我们通过创建一个WPF桌面程序,引用Asp.Net Core网站项目,使用命名空间调用Asp.Net Core项目中准备好的公共方法获取IHost接口对象,从而启动Web服务器。需要注意的是,要确保ContentRootPath设置正确,以避免css、js文件出现404错误。

五、项目意义与展望

此项目的实现,不仅让我们能够在Windows桌面上运行Asp.Net Core网站,还为开发者们提供了一种全新的开发体验。我们可以想象,在未来的开发中,结合C/C++的优势和.NET的强大功能,将能创造出更多激动人心的应用。

相信读者已经对利用.NET Core 3在Windows桌面应用上构建Asp.Net Core网站有了初步的了解。这是一个充满创新与挑战的新领域,我们期待更多的开发者加入进来,共同和开发更多的可能性。说明关键部分截图的内容要求如下:

一、网站运行细节说明

1. 主窗口与托盘图标互动展示:当网站运行中关闭主窗口时,它会最小化到系统托盘图标。用户只需双击图标,即可恢复窗口显示。若网站未运行,则表示正常退出程序。这一部分的截图应展示主窗口、托盘图标以及它们之间的交互动作。

2. IdentityServer.exe的独立运行方式:网站中的IdentityServer项目实际上也可以作为一个单独的应用程序运行。用户只需双击IdentityServer.exe即可启动。相应的截图应展示IdentityServer.exe的运行界面和操作过程。

二、配置与日志细节展示

1. Https配置图示:关于Https的配置细节,可以通过一张流程图或示意图来展示配置步骤和注意事项。截图应清晰地展示Https的配置选项、参数设置以及关键步骤。

2. 网站日志信息重定向输出流说明:关于网站日志信息的重定向输出流的具体实现和配置,可以通过一张图示来直观展示日志信息的流向和处理过程。截图应包含日志信息输出、处理的关键环节和配置设置。

三、技术细节与注意事项提醒

1. WPF模型绑定的实现方式:WPF模型绑定需要实现INotifyPropertyChanged接口,而PropertyChanged.Fody将在编译时自动注入相关代码。相关截图应展示WPF模型绑定的代码实现、INotifyPropertyChanged接口的定义以及PropertyChanged.Fody的作用和使用方式。

2. 跨线程调用UI控件的注意事项:在软件开发过程中,跨线程调用UI控件可能会导致程序出错或崩溃。需要特别注意。相应的截图应展示跨线程调用的场景、可能存在的问题以及解决方案。

四、更新提示与资源链接

1. 更新提示(2020-1-10):提示用户克隆github项目,并在IdentityServer项目的依赖项中将Harmonic项目引用指向下载的位置,以避免编译失败。截图应展示更新内容的详细说明、操作步骤以及资源链接。

以上即为对文章关键部分的截图要求。在截图时,请确保清晰展示每个部分的内容,以便读者能够准确理解文章所描述的技术细节和操作过程。保持截图的真实性和清晰度,以便更好地传达文章的信息和意图。

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by