使用Visual Studio 2015 开发ASP.NET MVC 5 项目部署到Mono/Jexus

最新的Mono 4.4已经支持运行asp.net mvc5项目,有的同学听了这句话就兴高采烈的拿起Visual Studio 2015创建了一个mvc 5的项目,然后部署到Mono上,浏览下发现一堆错误出现,心中一万只草泥马奔腾而来,这也叫支持吗,这个问题是Visual Studio造成的,不相信的话可以使用Xamarin.Studio创建的asp.net项目,部署过程非常顺利,没有遇到什么问题;本文就是为你解开这个结,如何Visual Studio 2015搞定ASP.NET MVC 5项目的跨平台开发。

vs2015新建一个asp.net的项目(目标框架是.net4.5),选择mvc,并且更改身份验证为不适用身份验证。

编译,并发布到jexus,访问之。报出的错误信息如下图。

Could not find file "/var/www/mvcdemo/bin\roslyn\csc.exe". 这一行告诉了我们找不到roslyn 的c# 编译器, 当前版本的Mono 的编译器还是Mono的mcs编译器,并没有完成到roslyn 这个编译器的升级工作,这个工作正在进行过程中,在不远的将来就可以统一使用roslyn。

解决这个问题的方法就是用Mono的mcs编译器,项目上右键管理NuGet程序包,打开管理器,按顺序卸载以下两个组件:

l Microsoft.CodeDom.Providers.DotNetCompilerPlatform

l Microsoft.Net.Compilers

重新发布到jexus,通过浏览器可以看到清新的Bootstrap界面了, mono 4.4.2版本目前对mvc5的兼容性相当好了。

其他的兼容性问题都是Windows/Linux的差异,比如大小写和路径问题等,例如从Nuget上下载下来的System.Web.Webpages.dll 几个相关的dll 中间的pages 那个p是小写的,需要变成大写。Bootstrap等几个前端框架里面也有一些不区分大小写的,有一些样式无法显示,我把Jexus的不区分大小写打开就好了。

在jexus中,只需要把 /usr/jexus/jws这个脚本文件中的 “export MONO_IOMAP=...”这一句前边的“#”去掉,就可以不区分大小写了。

[root@TENCENT64 /usr/jexus]# vi jws

原文地址:http://www.cnblogs.com/shanyou/p/5720733.html


.NET社区新闻,深度好文,微信中搜索dotNET跨平台或扫描二维码关注

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/328880.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

体质测试数据统计软件,[体质测试数据excel自动统计表]体质测试数据Excel自动统计模板的研制...

《[体质测试数据excel自动统计表]体质测试数据Excel自动统计模板的研制》由会员分享,可在线阅读,更多相关《[体质测试数据excel自动统计表]体质测试数据Excel自动统计模板的研制(3页珍藏版)》请在装配图网上搜索。1、体质测试数据excel自动统计表体质测试…

常用数据库连接池 (DBCP、c3p0、Druid) 配置说明

转载自 常用数据库连接池 (DBCP、c3p0、Druid) 配置说明1. 引言 1.1 定义 数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出。对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标…

分布式基础通信协议:paxos,totem和gossip

背景: 在分布式中,最难解决的一个问题就是多个节点间数据同步问题。为了解决这样的问题,涌现出了各种奇思妙想。只有在解决了如何进行信息同步的基础之上才衍生出形形色色的应用。这里开始介绍几种分布式通信协议。 简单即有效——totem协议:…

计算机专业可以评机械工程师,机械工程师个人评价

人就像一个多面体。仅仅由别人的评价来判定自己是不全面的,当自己也沉淀下来,窥探自己的内心,写下自己的自我评价,这样才可以不断进步。但是自我评价要怎么写呢?下面是学习啦小编带来机械工程师个人评价范文的内容,欢…

分布式系统之消息队列

转载自 分布式系统之消息队列 一、MQ简介 消息队列中间件是分布式系统中重要的组件,主要解决应用耦合,异步消息,流量削锋等问题,实现高性能,高可用,可伸缩和最终一致性架构。 使用较多的消息队…

微软准备开源PowerShell

近日微软再次在向开源投出橄榄枝, PowerShell是面向Windows和Windows Server的自动化平台和脚本语言,帮助用户简化系统的管理。在纳德拉的带领下微软也逐渐走向开放,根据相关爆料称微软有计划在近期内 开源该脚本语言。 知名Windows爆料人士W…

华为荣耀畅玩7c计算机在那,华为荣耀畅玩7C内存多大

华为荣耀畅玩7C内存多大这是很多朋友咨询的问题,华为荣耀畅玩7C凭借高颜值,双摄,人脸识别受到广泛关注,但是也有很多朋友更关心内存多大的问题,下面就来详细介绍一下华为荣耀畅玩7C内存多大。华为荣耀畅玩7C内存多大?…

谈谈数据库连接池的原理

转载自 谈谈数据库连接池的原理这次我们采取技术演进的方式来谈谈数据库连接池的技术出现过程及其原理,以及当下最流行的开源数据库连接池jar包。 一.早期我们怎么进行数据库操作1.原理:一般来说,java应用程序访问数据库的过程是&#xff1a…

华为荣耀20计算机,华为云电脑将停止服务/荣耀新机保护壳曝光/小米新机渲染图曝光...

华为云电脑8月16日停止服务和运营近日,华为官方宣布,“华为云电脑”APP将于北京时间2021年8月15日23点59分停止服务和运营,自那之后用户将再无法登录和使用。华为表示“届时及以后您将无法登录和使用。在此之前,有效套餐仍可连接使…

.NET Core系列 :3 、使用多个项目

通过前面的两篇文章.NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门 和.NET Core系列 : 2 、project.json 这葫芦里卖的什么药,我们已经知道如何创建新的项目,如何生成并运行我们的应用程序,也知道(…

Docker 入门教程

转载自 Docker 入门教程2013年发布至今, Docker 一直广受瞩目,被认为可能会改变软件行业。 但是,许多人并不清楚 Docker 到底是什么,要解决什么问题,好处又在哪里?本文就来详细解释,帮助大家理…

ftb测试软件,EXFO推出FTB-2光纤测试平台

ICCSZ讯 EXFO发布新的基于模块FTB-2 Pro紧凑型平台,这是目前市场上最小的高速、多技术和光学测试平台。它支持两个单插槽模块,如在同一单元中可进行以太网和光时域反射仪(OTDR)的组合测试功能。该系统还支持光谱和多层测试。总而言之,该平台提…

数据库设计【笔记】

数据库设计一、设计步骤1.收集信息(来源项目需求分析)2.标识实体(一般是需求分析中需要管理的信息名词)3.标识每个实体的属性4.实体之间的关系 二、画e-r图(实体关系图)1.矩形表示实体2.椭圆表示实体的属性…

你必须知道的EF知识和经验

注意:以下内容如果没有特别申明,默认使用的EF6.0版本,code first模式。 推荐MiniProfiler插件 工欲善其事,必先利其器。 我们使用EF和在很大程度提高了开发速度,不过随之带来的是很多性能低下的写法和生成不太高效的sq…

Go语言、Docker 和新技术

转载自 Go语言、Docker 和新技术上个月,作为 Go 语言的三位创始人之一,Unix 老牌黑客罗勃派克(Rob Pike)在新文章“Go: Ten years and climbing”中,回顾了一下 Go 语言的发展过程。其中提到,Go 语言这十年…

服务器 .err文件,IIS 关闭HTTPERR(IIS日志)的方法

关闭HTTPERR的方法运行里输入 regedit 进入注册表编辑器[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters]在右边 点鼠标右键 新建dword值 EnableErrorLogging 重新启动服务器就可以了"EnableErrorLogging"dword:00000000重起后,2…

数据库的实现【笔记】

一、创建数据库1.简单的方式create database 数据库名2.指定主文件和日志文件参数create database 数据库名 on [primary](name数据库逻辑名, --数据库名_datafilename数据库主文件(包括路径),--E:\第二期\第二章数据库的实现\数据库名_d…

Entity Framework Core Lolita

这是Entity Framework Core的一个轻量的扩展,提供批量更新和删除操作的支持。而且这个库出自中国一位MVP之手,虽然内容是英文,也很简单,相信你也能看懂。 This is a light-weight extension which provides bulk update and delet…

如何显示服务器控件,Panel Web 服务器控件概述

Panel Web 服务器控件概述10/22/2014本文内容更新:2007 年 11 月Panel Web 服务器控件在 ASP.NET 网页内提供了一种容器控件,您可以将它用作静态文本和其他控件的父级。本主题包括:背景代码示例类参考背景可以将 Panel 控件用作其他控件的容器…

使用GZIP和Zip压缩Java数据流

转载自 使用GZIP和Zip压缩Java数据流本文通过对数据压缩算法的简要介绍,然后以详细的示例演示了利用java.util.zip包实现数据的压缩与解压,并扩展到在网络传输方面如何应用java.util.zip包现数据压缩与解压综述 许多信息资料都或多或少的包含一些多余的…