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),那么这 ...
随机推荐
- 一张图理清 Python3 所有知识点
如果你前几天一直有关注 GitHub Trending,那你应该会留意到「Python3 in one pic」这个开源项目. 很多人学习python,不知道从何学起.很多人学习python,掌握了基 ...
- 事件 - DOM编程
何为 DOM 事件,HTML DOM 使JavaScript 有能力对 HTML 事件做出反应. 1. 事件流 一个 DOM 事件可以分为捕获过程.触发过程.冒泡过程. 下面一个<a>元素 ...
- 【av68676164(p51-p53)】虚拟内存管理(2)
虚拟内存管理(2) 7.3.4 缺页终端 分级存储体系 cache+内存+辅存 页表扩充-带中断位的页表 页号 页框号 中断位I 辅存地址 访问位 修改位 1 1 0 0 0 1 中断位I-标志该页是 ...
- 最火热的极速开发框架Spring Boot
Spring Boot是Spring家族中的一个全新的框架,它用来简化Spring应用程序的创建和开发过程,也可以说Spring Boot能简化我们之前采用Spring mvc + Spring + ...
- [leetcode/lintcode 题解] Google面试题:合法组合
给一个单词s,和一个字符串集合str.这个单词每次去掉一个字母,直到剩下最后一个字母.求验证是否存在一种删除的顺序,这个顺序下所有的单词都在str中.例如单词是’abc’,字符串集合是{‘a’,’ab ...
- 日记——递归or搜索?
好久没发博了,今天发一篇. 这两天学校功课比较紧,编程稍微放了放做题量. 抽空学了学深搜,感谢zah同学给我讲解dfs,浅显易懂,我很快就适应了. 做了几个基础题,没有想象中那么难(菜鸡BB,因为题简 ...
- troubleshoot之:GC调优到底是什么
目录 简介 那些GC的默认值 GC的选择 GC的最大线程个数 初始化heap size 最大的heap size 分层编译技术 我们到底要什么 最大暂停时间 吞吐率 简介 我们经常会听到甚至需要自己动 ...
- Redis哨兵模式的配置
绪论 现有三台设备,192.168.137.11.192.168.137.12和192.168.137.13,要求在三台设备上实现redis哨兵模式,其中192.168.137.11为master,其 ...
- kubectl 安装
下载kubectl二进制文件curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.10.0/bin/linux/a ...
- 曹工改bug:cpu狂飙,old gc频繁,线程神秘死亡连环案件调查报告
曹工改bug:cpu狂飙,old gc频繁,线程神秘死亡连环案件调查报告 前言 前两天,访问开发环境上一个java服务,发现一直转圈圈,因为我开着fiddler,可以看到的现象是,接口一直没返回:本来 ...