Visual Studio编译Core程序部署到linux
- 一、背景
随着微软拥抱开源,推出Net Core框架,目前已经支持跨平台,能部署到Linux、MacOS、Windows等系统上。
下面我们就来分享一下Visual Studio编译好的代码部署到Linux上。
- 二 、简单例子
1. 新建一个API程序

2. 新建一个数据传输实体类
[Serializable]
public class TData
{
/// <summary>
/// 操作结果:Tag返回为1表示成功,0为失败
/// </summary>
public int Tag { get; set; }
/// <summary>
/// 返回消息
/// </summary>
public string Message { get; set; } } [Serializable]
public class TData<T> : TData
{
/// <summary>
/// 返回的结果
/// </summary>
public T Result { get; set; }
}
3. 新建一个User实体类
[Serializable]
public class User
{
public string Id { get; set; }
public string Name { get; set; }
public string LoginCode { get; set; }
public string LoginPwd { get; set; }
public string Gender { get; set; }
public string Address { get; set; }
}
4. 新建一个UserController控制器,新建两个API GetUserById和PostSaveUserInfo
[Route("api/[controller]/[action]")]
[ApiController]
public class UserController : ControllerBase
{
/// <summary>
/// 测试服务器连接
/// </summary>
/// <returns></returns>
[HttpGet]
public string Get()
{
return "";
}
/// <summary>
/// 根据User.Id获取用户信息
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
//[Route("GetUserById")]
[HttpGet]
public TData<User> GetUserById(string userId)
{
TData<User> tData = new TData<User>();
if (!string.IsNullOrEmpty(userId) && string.Compare(userId, "") == )
{
tData.Tag = ;
tData.Result = new User()
{
Id = userId,
Name = "sam",
LoginCode = "",
LoginPwd = "",
Gender = "男",
Address = "桂城"
};
}
else
{
tData.Message = "没有找到用户信息";
}
return tData;
}
/// <summary>
/// 保存用户信息
/// </summary>
/// <param name="user"></param>
/// <returns></returns>
//[Route("PostSaveUserInfo")]
[HttpPost]
public TData PostSaveUserInfo(User user)
{
TData tData = new TData();
if (user != null)
{
tData.Tag = ;
tData.Message = "保存成功!";
}
else
{
tData.Message = "保存失败!";
}
return tData;
}
}
5. 运行起来,使用PostMan调用一遍,保证服务是正常的,返回1表示调用成功

6. 发布项目,选择Linux 64运行环境


7. 使用FileZilla上传已经编译发布的文件

8. 使用dotnet命令启动这个程序

9. 测试API连接,返回1是正常的

10. 调用我们创建的API


- 三、总结
一个简单的例子分享,在Liunx学习之旅,分享与记录。
Visual Studio编译Core程序部署到linux的更多相关文章
- Asp.Net Core 程序部署到Linux(centos)生产环境(二):docker部署
运行环境 照例,先亮环境:软件的话我这里假设你已经批准好了.net core 运行环境,未配置可以看我的这篇[linux(centos)搭建.net core 运行环境] 腾讯云 centos:7.2 ...
- Asp.Net Core 程序部署到Linux(centos)生产环境(一):普通部署
运行环境 照例,先亮底 centos:7.2 cpu:1核 2G内存 1M带宽 辅助工具:xshell xftp 搭建.net core运行环境 .net core 的运行环境我单独写了一篇,请看我的 ...
- ASP.NET Core教程:ASP.NET Core程序部署到Linux
一.前言 这篇文章我们将讲解如何将ASP.NET Core 程序部署到Linux.这里我们使用的是虚拟机里面安装的Centos7.这里的ASP.NET Core程序,以上篇文章中发布的框架依赖文件为例 ...
- Visual Studio 编译Winform程序不生成.vshost.exe和.pdb文件的方法
问题:使用Visual Studio编译工程时,默认设置下,即使选择了「Release」时也会生成扩展名为「.vshost.exe」和「.pdb」的文件. 先解释一下各个文件的作用: .pdb文件: ...
- 在Windows平台用visual studio编译的可执行文件部署时报:应用程序无法正常启动0xc000007b(跟DirectX9无关的原因)
最近在做EasyDarwin开源流媒体服务器Windows版本编译与部署时发现一个问题,在开发机本机运行都很正常,但是部署到目标机器(未安装vs等开发环境)时,莫名其妙报出了"应用程序无法正 ...
- Windows下docker的安装,将ASP.NET Core程序部署在Linux和Docker中
参考文章: https://www.cnblogs.com/jRoger/p/aspnet-core-deploy-to-docker.html docker for windows下载连接: htt ...
- 使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台
使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台. 前面讲解了VSCode开发调试 .NET Core.都只是在windows下运行. .NET Core真正的核心是跨平 ...
- ASP.NET Core教程:ASP.NET Core 程序部署到Windows系统
一.创建项目 本篇文章介绍如何将一个ASP.NET Core Web程序部署到Windows系统上.这里以ASP.NET Core WebApi为例进行讲解.首先创建一个ASP.NET Core We ...
- .NET Core跨平台:.NET Core项目部署到linux(Centos7)
1.开篇说明 a 上篇博客简单的说明了一下 使用.NET Core开发的一个总结,地址是:(http://www.cnblogs.com/hanyinglong/p/6442148.html),那么这 ...
随机推荐
- Django 环境下常用的模型设计
Django 环境下常用的模型设计 用户表 继承 django.contrib.auth.model import AbstractUser AbstractUser 默认已经包含了很多字段了 id ...
- 3、Template Method 模板方法 行为型设计模式
1.了解模板方法 1.1 模式定义 定义一个操作算法中的框架,而将这些步骤延迟加载到子类中. 它的本质就是固定算法框架. 1.2 解决何种问题 让父类控制子类方法的调用顺序 模板方法模式使得子类可以不 ...
- GitLab Admin Area 500 Error
GitLab Admin Area 500 Error GitLab Admin Area Settings 菜单全部报错 500 解决方法 执行: gitlab-rake cache:clear # ...
- FreeAnchor 国科大
- java 静态导入、可变参数、集合嵌套
一 静态导入 在导包的过程中我们可以直接导入静态部分,这样某个类的静态成员就可以直接使用了. 在源码中经常会出现静态导入. 静态导入格式: import static XXX.YYY; 导入后YY ...
- C#LeetCode刷题-栈
栈篇 # 题名 刷题 通过率 难度 20 有效的括号 C#LeetCode刷题之#20-有效的括号(Valid Parentheses) 33.0% 简单 42 接雨水 35.6% 困难 71 简 ...
- 浅谈:什么是.NET
.NET是 Microsoft XML Web services 平台.XML Web services 允许应用程序通过 Internet 进行通讯和共享数据,而不管所采用的是哪种操作系统.设备或编 ...
- GAN量化评估方法——IS(Inception Score)和FID(Frechet Inception Distance score)
生成模型产生的是高维的复杂结构数据,它们不同于判别模型,很难用简单的指标来评估模型的好坏.下面介绍两种当前比较流行的评估生成模型的指标(仅判别图像):IS(Inception Score)和FID(F ...
- 常见面试题之操作系统中的LRU缓存机制实现
LRU缓存机制,全称Least Recently Used,字面意思就是最近最少使用,是一种缓存淘汰策略.换句话说,LRU机制就是认为最近使用的数据是有用的,很久没用过的数据是无用的,当内存满了就优先 ...
- 必看!2020最新黑马JAVA 学习路线
https://www.fang1688.cn/2020/08/24/%e5%bf%85%e7%9c%8b%ef%bc%81java-%e5%ad%a6%e4%b9%a0%e8%b7%af%e7%ba ...