自定义Blazor单文件Web程序端口

#接 上篇 Mysql快速迁移版的制作过程#

上一篇《Mysql8快速迁移版的制作过程》完成了快速迁移的数据库的准备,今天接着讲基于Blazor的Web程序快速迁移版的制作。

单文件发布的难点不在发布而是因为程序系统默认给了个5001的端口,而是如何能够让用户自定义web使用的web端口。

1、还是简单重复一下单文件发布的设置。

发布为单文件的好处就是文件少、不需要单独安装运行时,迁移方便。相关发布设置如下图:

2、设置自定义端口

修改项目的Program.cs

cs 复制代码
//这两变量的是为了下面说明临时添加
//是否单文件打包,用于程序功能判断用
singleFile=true;
//网站将要使用的端口号
SitePort=80;


----------
var builder = WebApplication.CreateBuilder(args);
-------

//实际添加的代码:
//单文件打包时使用配置文件中的自定义端口
if (singleFile)
{

    builder.WebHost.ConfigureKestrel(options =>
    {
        options.ListenAnyIP(SitePort); // 监听所有网络接口上的指定端口
    });

}

---------
 var app = builder.Build();

这样发布的程序运行时就可以监听指定的端口了,但是我们的目的时让程序更有 弹性,所以还需要给程序弄个config.ini 的配置文件,每次启动程序我们直接冲配置文件中读取端口参数webPort来初始化我们的程序既可以完成程序的随意迁移使用。

到此,一个能够随意迁移的Blazor的Web程序就构建好了。

这里有朋友会问能不能做成下面这样把数据库的初始化、运行以及Blazor程序的运行集中在一个程序中一键启动。

经过实践发现这样是不行的,数据库的初始化和运行启动没有问题,但是Blazor程序的运行需要很高的安全行,不允许外部程序直接调用启动。

所以,我只能弄成这样

如果有朋友有解决办法麻烦分享一下。

"志超教务通 工作更轻松" wx关注"志超教务通"更多内容和程序分享。

感谢各位的阅读。

相关推荐
Death2001 小时前
Qt 中的 QListWidget、QTreeWidget 和 QTableWidget:简化的数据展示控件
c语言·开发语言·c++·qt·c#
Death2002 小时前
Qt 3D、QtQuick、QtQuick 3D 和 QML 的关系
c语言·c++·qt·3d·c#
yufei-coder2 小时前
C#基础语法
开发语言·c#·.net
yngsqq2 小时前
031集——文本文件按空格分行——C#学习笔记
笔记·学习·c#
新手unity自用笔记17 小时前
项目-坦克大战学习-子弹的移动与销毁
笔记·学习·c#
qinzechen18 小时前
分享几个做题网站------学习网------工具网;
java·c语言·c++·python·c#
yufei-coder1 天前
C# Windows 窗体开发基础
vscode·microsoft·c#·visual studio
dangoxiba1 天前
[Unity Demo]从零开始制作空洞骑士Hollow Knight第十三集:制作小骑士的接触地刺复活机制以及完善地图的可交互对象
游戏·unity·visualstudio·c#·游戏引擎
AitTech1 天前
深入理解C#中的TimeSpan结构体:创建、访问、计算与格式化
开发语言·数据库·c#
hiyo5851 天前
C#中虚函数和抽象函数的概念
开发语言·c#