今天自己开发了一个订机票的微信公众号,功能基本已经完成,然后想部署到服务器实际测试下.结果部署上去出现各种问题.先安装asp.net core模块,然后发现数据库并不像在开发时一样,执行ef的命令行语句就可以了.可以到输出目录找到对应的sql语句,到服务器上执行一下. 后来部署上去以后,发现很多对应控制器的action打开是404,感觉很奇怪,在web.config里面把日志输出打开.stdoutLogEnabled="false"改为true.发现有错误,提示OFFSET 附近有语法…
部署准备工作 1.服务器开启添加IIS相关功能 1.1. 点击windows搜索到   “启用或关闭windows功能” 1.2 选择添加IIS的部分功能, 如下图所示 2.进入IIS,添加已经发布的网站文件 3.设置应用程序池无托管代码 4.运行你的网站 4.1. 默认运行下, 如出现500.19问题, 则说明网站目录权限不足, 需要给网站添加用户, 设置所有权限. 4.2.打开网站的文件, 添加用户设置权限, 然后刷新网站 5.按照以上的操作, 一般即可正常运行, 如出现不同的异常, 以下总…
1. 微软官网原文链接: https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/iis/index?view=aspnetcore-2.1&tabs=aspnetcore2x 2.  安装步骤: (1) 安装IIS (2)下载托管捆绑包: (3) 安装软件 (4) 安装完成后重启IIS (5) 在IIS服务管理器中可查看到“AspNetCoreModule.dll” 3. 控制台发布: (1) dotnet new mvc   …
1.问题: 首次在ASP.NET Core项目中使用Code First模式的Entity Framework框架,在添加EF工具并做初始化迁移(perform initial migration),执行Add-Migration Initial遇到以下错误: PM> Add-Migration InitialAdd-Migration : 无法将“Add-Migration”项识别为 cmdlet.函数.脚本文件或可运行程序的名称.请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次.…
ASP.NET Boilerplate 学习   1.在http://www.aspnetboilerplate.com/Templates 网站下载ABP模版 2.解压后打开解决方案,解决方案目录: 3.在AbpTest.Web.Host项目的appsettings.json中配置数据库连接字符串 新建名为AbpTestDb的空白数据库,在NuGet包管理控制台 执行    Update-Database  命令,初始化数据库 4.运行应用程序将看到Swagger生成的API接口页面 AspN…
前言: 当构建一个ASP.NET Core应用程序并且计划将其运行在IIS中时,你会发现Core应用程序和之前版本的ASP.NET程序在IIS中的运行方式是完全不一样的.与ASP.NET时代不同,ASP.NET Core不再是由IIS工作进程(w3wp.exe)托管,而是使用自托管Web服务器(Kestrel)运行,IIS则是作为反向代理的角色转发请求到Kestrel不同端口的ASP.NET Core程序中,随后就将接收到的请求推送至中间件管道中去,处理完你的请求和相关业务逻辑之后再将HTTP响…
在基于传统的.NET Framework的Asp.Net Mvc的时候,本地开发环境中可以在IIS中建立一个站点,可以直接把站点的目录指向asp.net mvc的项目的根目录.然后build一下就可以在浏览器里面刷新到最新的修改了,也可以附加到w3wp的进程进行调试.但是在开发基于.Net Core的Asp.Net Core项目的时候,这样的做法已经无法满足我们的需要了: 更改完代码build一下,无需部署即可在浏览器得到最新的更改. 附加到进程调试. Asp.Net Core的项目需要先Pub…
ASP.NET CORE部署到CentOS中 在Linux上安装.NET Core 参考:https://www.microsoft.com/net/core#linuxcentos 配置Nginx 安装前准备 yum install gcc-c++ yum install pcre pcre-devel yum install zlib zlib-devel yum install openssl openssl--devel 下载安装Nginx,执行如下命令 wget http://ngin…
从2016年7月, .NET Core1.0 正式发布开始,由于时间问题,我没怎么关注过.NET Core,最近刚抽出点时间研究了下,先讲下如何把ASP.NET Core部署到Linux上吧.这里我用的是Ubuntu. 1.首先我们搭建一个虚拟机,具体搭建步骤自行百度. 虚拟机软件下载链接:http://pan.baidu.com/s/1c1N0OBe 密码:bblk 2.参照官方文档部署ASP.Net Core环境 参考链接:https://www.microsoft.com/net/core…
asp.net core 在iis上运行抛出502.5异常的部分原因以及解决方案 环境说明 已安装 .net core runtime 2.1.401 已安装 .net core windows hosting 2.1.3 运行状况说明: 直接在命令行运行dotnet 命令可以启动站点 访问iis的站点抛出502.5错误 可能原因以及解决方法 1.web.config的格式不能正确识别,如web.config文件最后的注释 * 删除web.config最后的注释 2.通过iis启动时iis无法正…
创建ASP.NET Boilerplate,还原数据库和启动客户端 这里就略过,具体参考 ABP框架(asp.net core 2.X+Vue)模板项目学习之路(一) ASP.NET Boilerplate VueJS Template 选择 Target Version:v3.x Target Framework:.NET Core (Cross Platform) Single Page Web Application:vue.js Choose your project's name:My…
最近领导叫我做的一个B/S端的小项目,突发奇想想用到core web api 今天写数据分页的时候,就想着 用linq分页查询吧,直接上代码 _context.Skip(Size * (PageNum - 1)).Take(Size); 于是百度了一下,linq分页的方法很简单,一共用到的两个linq方法: 1.skip 2.take 简单理解一下这行代码,Skip表示从第几条数据开始,Take的意思是显示多少条数据 所以代码就表示从第几条数据开始取出你要的size的数据 但是问题来了!!! 我…
原文地址:传送门 1.InvalidOperationException: Cannot find compilation library location for package 'xxx'问题: 为了asp.net核心2.0项目已经成功找到外部程序集.NETStandard2.0,你需要重写一个内置的MetadataReferenceFeatureProvider.为此,我们需要添加以下类: using System; using System.Collections.Generic; us…
在使用asp.net core的时候,采用take().skip()分页的时候报如下错误: SqlException: 'OFFSET' 附近有语法错误. 在 FETCH 语句中选项 NEXT 的用法无效. 这个主要是在sql server 2008中,不支持FETCH和NEXT语句(sql server 2012才支持). 之后在网上参考了一下其他的文章,最终解决了这个问题,记录一下,方便后来人. 解决方法: public static class DbContextOptionsBuilde…
'OFFSET' 附近有语法错误.在 FETCH 语句中选项 NEXT 的用法无效. 说明: 执行当前 Web 请求期间,出现未经处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息. 异常详细信息: System.Data.SqlClient.SqlException: 'OFFSET' 附近有语法错误.在 FETCH 语句中选项 NEXT 的用法无效. =======================================================…
在使用 EF 的时候,突然发现更新后在服务器中运行出错,异常信息主要包含以下信息: 'OFFSET' 附近有语法错误.\r\n在 FETCH 语句中选项 NEXT 的用法无效.\r\n关键字 'AS' 附近有语法错误. 想到可能时因为本地开发环境的数据库版本高于服务器版本,导致 EF 生成了错误的 SQL 语句,但是不知道具体应该从哪里修改. 经 google 后找到解决方案: 找到 EF 对应生成的 edmx 文件,使用文本编辑器打开编辑,找到“ProviderManifestToken”这一…
在使用 EF 的时候,突然发现更新后在服务器中运行出错,异常信息主要包含以下信息: 'OFFSET' 附近有语法错误.\r\n在 FETCH 语句中选项 NEXT 的用法无效.\r\n关键字 'AS' 附近有语法错误. 想到可能时因为本地开发环境的数据库版本高于服务器版本,导致 EF 生成了错误的 SQL 语句,但是不知道具体应该从哪里修改. 经 google 后找到解决方案: 找到 EF 对应生成的 edmx 文件,使用文本编辑器打开编辑,找到"ProviderManifestToken&qu…
https://blog.csdn.net/weixin_34321977/article/details/85850064 在使用 EF 的时候,突然发现更新后在服务器中运行出错,异常信息主要包含以下信息: 'OFFSET' 附近有语法错误.\r\n在 FETCH 语句中选项 NEXT 的用法无效.\r\n关键字 'AS' 附近有语法错误. 想到可能时因为本地开发环境的数据库版本高于服务器版本,导致 EF 生成了错误的 SQL 语句,但是不知道具体应该从哪里修改. 经 google 后找到解决…
网上已经有许多ASP.NET Core关于Widows IIS部署的文章,在部署到服务器时遇到了一些问题,在这里我就不再对原理进行阐释(复制)了,只写下一些关键环节,想看原理的同学请参考官网,此文章作为留用. 步骤: 1.ASP.NET Core程序内配置 2.Windows Server配置  一.ASP.NET Core应用程序配置 web.config 配置(官方教程) 重点修改 processPath 和 arguments 两个参数 processPath 修改为 dotnet arg…
1.下载安装 Windows Server Hosting ,它的作用是,让IIS有反向代理功能(Asp.Net Core Module负责反向代理工作),将请求转发到 Kestrel 2.发布网站,有两种方法:用CLI dotnet publish 命令发布,也可以通过Visual Studio发布 在发布的文件夹中查看web.config文件,把 stdoutLogEnabled=”true” ,然后新建一个 logs 文件夹,因为web.config设置了日志的输出目录 stdoutLog…
asp.net core项目部署到IIS稍微不同于之前,记录几个要点: 一.下载安装.NET Core 托管捆绑包,下载地址,这个链接或许不是最新的了,官方文档里面有这个链接,到下图所示位置即可找到. 安装完之后,会发现多了个模块: 然后重启iis.如果还是出现以下错误: HTTP Error 502.5 - Process Failure Common causes of this issue: The application process failed to start The appli…
如果你的系统环境没有 .NET CORE SDK,请到官网进行下载: https://www.microsoft.com/net/download/windows 接下来我们开始进行环境的部署,首先在磁盘建立路径 : E:\Workstation\site  用于站点的发布 部署有两种方式,1 .控制台发布     2 .在 VS(2017) 进行发布 我们先来说第一种发布方式,首先我们要确认 IIS 已安装 .NET CORE 的 Module ,如果你的环境已安装可在找到一个名称为  Asp…
问题:部署到IIS上的ASP.NET Core项目,在更新的时候会进程占用的错误 初步解决方案: 1,关闭应用程序池 2,关闭网站 3,更新项目 缺点:网站没法访问,部署项目停的时间过长 查询官方文档后,官方给出的方案: 结合官方文档,找到了一个目前看算是比较好的解决方案(一定要看底部的特别注意) 好点的解决方案(一次配置后,1秒钟更新): 1,在D盘根目录创建一个app_offline.htm文件,注意是.htm文件,不是.html 2,创建一个待发布文件夹,把需要更新的项目文件放到该目录下…
研究.NET Core已经一段时间了,一直都是在Windows上开发,这2天尝试着将公司一个很简单的内部Web项目改造成了ASP.NET Core,并且部署到Linux上.生产环境如下: Linux Ubuntu 14.04 Windows Server 2008, SQL Server 2008 EXPRESS R2 安装SDK 如果Linux服务器可以访问外网,那么按照 官网文档 的指导可以很简单的完成SDK的安装. 不巧的是我找的虚拟机只能访问内网,因此只能通过代理的方式来安装.关于如何设…
----------------------------   以下内容针对 ASP.NET Core2.1,2.2出现IIS进程内寄宿 暂不展开讨论-------------------------- 相比ASP.NET,ASP.NET Core 2.1出现了3个新的组件:ASP.NET Core Module.Kestrel.dotnet.exe, 后面我们会理清楚这三个组件的作用和组件之间的交互原理. ASP.NET Core 设计的初衷是开源跨平台.高性能Web服务器,ASP.NET Co…
1.环境安装 https://dotnet.microsoft.com/download/dotnet-core 下载Runtime & Hosting Bundle包安装,iis模块会出现支持netcore的内容 2.部署iis 和原来的net部署一样,唯一区别是将托管模式修改为无托管 扩展: .netcore的托管模式主要分2种:进程内托管和进程外托管 在 IIS 工作进程 (w3wp.exe) 内托管 ASP.NET Core 应用,称为进程内托管模型.将 Web 请求转发到运行 Kest…
摘要 最近项目中,尝试使用asp.net core开发,在部署的时候,考虑现有硬件,只能部署在windows上,linux服务器暂时没有. 部署注意事项 代码中启用iis和Kestrel public class Program { public static void Main(string[] args) { BuildWebHost(args).Run(); } public static IWebHost BuildWebHost(string[] args) => WebHost.Cr…
1.安装 .NET Core Framework 下载.net core地址:官网地址 2.Install IIS 在控制面板->程序与功能->Internet Infomation Services 3.站点部署 实例: https://github.com/aspnet/mvc 在IIS管理器,新建站点->物理路径Path:为项目的根目录. 网站绑定: 在host文件中添加127.0.0.1 mvcsanbox.cn,刷新dns缓存:cmd->ipconfig /flushdn…
前言: 在上一节中,通过一系列的步骤,已经将项目部署到IIS上,虽然遇到了一些问题,但最终解决并成功运行了.而在这一节中,将尝试通过linux系统的环境下,部署项目,实现Net Core跨平台的亮点. 虽然网上已经有很多关于asp.net core在linux下的部署教程了,但我还是想写一篇,主要增强我自己的记忆,同时分享下我部署遇到的坑. 我在我电脑win7的操作系统中用来虚拟机建了个CentOS7,来演示,我们的项目如何发布在Linux上运行. 开始: 一.安装.Dotnet Core 2.…
今天在部署asp.net core网站时,因为调用到阿里云的api,api的参数需要加密签名,系统报出了如下错误: warn: Microsoft.Extensions.DependencyInjection.DataProtectionServices[59] Neither user profile nor HKLM registry available. Using an ephemeral key repository. Protected data will be unavailabl…