准备工作:
1.NET SDK >= 8.0 下载地址:https://dotnet.microsoft.com/zh-cn/download
2.Visual Studio2022 下载地址:https://visualstudio.microsoft.com/3.SQL Server >= 2019 下载地址:https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads
4.SQL Server Management Studio 下载地址:https://learn.microsoft.com/zh-cn/sql/ssms/
必要配置:
根目录下appsettings.json 文件中的
"ConnectionStrings": {
"DefaultConnection": "Server=nhdSQLEXPRESS;Database=SunuerManage;User Id=sa;Password=123456;MultipleActiveResultSets=true;TrustServerCertificate=True;Max Pool Size=100;Min Pool Size=5;Pooling=true;"
},
Server=nhdSQLEXPRESS //指定要连接的数据库服务器及实例名称
Database=SunuerManage //指定要连接的默认数据库名称
User Id=sa; Password=123456 //提供登录 SQL Server 所需要的凭据(账号和密码)
MultipleActiveResultSets=true //允许在同一个数据库连接(同一个会话)上同时进行多个活动的数据读取操作(例如在一个查询读取数据的同时,再执行另一个查询)。场景:在使用 Entity Framework 时,如果在一个连接中需要迭代读取数据并同时执行其他操作,此参数要设置为 true 才能支持。
TrustServerCertificate=True //作用:当使用 TLS/SSL 加密连接 SQL Server 时,是否信任服务器端所提供的证书。含义:如果设置为 True,则在证书未被受信任的证书颁发机构 (CA) 签署或证书存在其他验证问题时,依然强制信任该证书并建立加密连接。安全提示:如果在生产环境中使用自签名证书或未公开可信的证书,这个选项可以让连接继续,但存在一定安全风险。应根据实际需求设置并妥善配置证书。
Max Pool Size=100; Min Pool Size=5; Pooling=true //控制数据库连接池(Connection Pool)的行为。含义:Pooling=true:启用连接池。连接池能在应用程序频繁访问数据库时提升性能,减少反复打开/关闭连接的开销。Max Pool Size=100:连接池中最多保留多少条空闲连接。如果超过这个数,新的连接请求会在可用连接释放前等待或者根据配置抛出异常。Min Pool Size=5:连接池中最少保留多少条空闲连接。应用程序首次连接数据库时,会预热并保留 5 条连接,以便快速响应后续请求。
运行系统:
下载解压后
1.在Data找到SunuerManage.sql文件,在SQL Server数据库中进行还原
2.用Visual Studio打开“SunuerManage.sln”文件》修改appsettings.json配置文件》点击 运行,
显示页面如下:
在浏览器中输入http://localhost:5021,页面可以正常打开,表明配置成功。
后台登陆地址:http://localhost:5021/Manage/Login
账号:niqiu
密码:123456
部署系统:
1.发布(Publish):在VS中右键项目名称点击“发布”,进行项目发布
2.部署到服务器
方案 A:部署到 Windows IIS
1.安装 IIS 和 .NET 扩展
在「服务器管理器」中添加「Web 服务器 (IIS)」角色。
安装「.NET Core 执行环境 / 扩展」以便 IIS 能够托管 .NET 应用。
2.建立网站
在 IIS 管理器中,右键「网站」》「添加网站」,配置物理路径指向先前发布的文件夹(publish)。
端口(默认 80)或域名可根据需要自定义。
3.应用程序池配置
新建或选择一个应用程序池,.NET CLR 版本选择「No Managed Code」或「.NET CLR 版本」均可(取决于安装的扩展),托管管道模式选「集成」。
确保「标识」具备对文件夹和数据库的访问权限(若需 Windows 身份验证时尤其注意)。
4.测试访问
启动 IIS,访问配置的域名或 IP 即可测试 Sunuer Manage 是否成功运行。
如果遇到「500 错误」,可查看 IIS 日志或应用程序事件日志获取报错信息。
方案 B:部署到 Linux(使用 Nginx 反向代理)
1.安装 .NET 运行时
在 Linux 环境(Ubuntu / CentOS / Debian 等)中安装对应版本的 .NET SDK/Runtime。
2.拷贝发布文件
将 publish 文件夹上传到服务器(例如 /var/www/sunuer 目录)。
进入该目录,执行 dotnet SunuerManage.dll(示例)测试是否能正常启动。
配置 Nginx
在 /etc/nginx/sites-available/ 路径下创建配置文件(如 sunuer.conf),示例:
server {
listen 80;
server_name your-domain.com;
location / {
proxy_pass http://127.0.0.1:5000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
将请求转发至应用程序监听的端口(默认 5000),您可以在 appsettings.json 中或命令行参数来指定端口。