最新的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跨平台或扫描二维码关注

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

  1. Visual Studio 2015打开ASP.NET MVC的View提示“Object reference not set to an instance of an object“错误的解决方案

    Visual Studio 2015打开ASP.NET MVC的View提示"Object reference not set to an instance of an object&quo ...

  2. Visual Studio 2015开发Android App问题集锦

    Visual Studio 2015开发Android App 启动调试始终无法完成应用部署的解决方案 创建一个Android App项目后,直接启动调试发现Visual Studio Emulato ...

  3. 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(一)-- 起步

    一.安装Visual Studio Code 安装文件下载地址:VS Code,当前最新版本是1.3. 推荐安装最新版,因为附带Debug插件,支持在vs code上进行断点调试. 二.安装.Net ...

  4. visual studio 2015开发nodejs教程1搭建环境

    http://sailsdoc.swift.ren/ 这里有 sails中文文档 1 安装nodejsv6.10.3 下载地址  https://nodejs.org/dist/v6.10.3/nod ...

  5. 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(二)-- Web Api Demo

    在上一篇里,我已经建立了一个简单的Web-Demo应用程序.这一篇将记录将此Demo程序改造成一个Web Api应用程序. 一.添加ASP.NET Core MVC包 1. 在project.json ...

  6. Visual Studio 2015开发Android App启动调试始终无法完成应用部署的解决方案

    创建一个Android App项目后,直接启动调试发现Visual Studio Emulator for Android已成功运行,但应用始终处于Build中(等待时间超过1小时),并未如预期通过a ...

  7. 【Windows10下OpenCV 3.4.0 + Visual Studio 2015开发环境的配】

    解压OpenCV并配置环境变量 打开自解压程序,设置解压路径为C盘根目录. 解压得到如下图所示的文件夹. 添加到Path环境变量的路径: 对于vs2015:(适用于本次开发环境的配置) C:\open ...

  8. 有感 Visual Studio 2015 RTM 简介 - 八年后回归 Dot Net,终于迎来了 Mvc 时代,盼走了 Web 窗体时代...

    有感 Visual Studio 2015 RTM 简介 - 八年后回归 Dot Net,终于迎来了 Mvc 时代,盼走了 Web 窗体时代 太阳火神的美丽人生 (http://blog.csdn.n ...

  9. Visual Studio 2015 使用ODP.net进行EF开发

    刚转了新公司,以前公司都是用VS+MSSQL作为开发工具的 现在新公司由于数据库是Oracle,而且新公司比较小规模,开发团队也没有什么规范 访问数据库的方式一直使用ADO.net的DataTable ...

最新文章

  1. python yield 和 yield from用法总结
  2. Linux (x86) Exploit 开发系列教程之十一 Off-By-One 漏洞(基于堆)
  3. webservice 测试窗体只能用于来自本地计算机的请求
  4. openfiler 搭建虚拟存储 并 配置服务端 (转载)
  5. HBase性能优化方法总结(2):表的设计
  6. Eclipse菜单栏 source Refactor详解
  7. IntelliJ IDEA 部署 Web 项目,终于搞懂了!
  8. 求字符串中字符的出现的最多次数和最少次数,删除后并获得最终字符
  9. 【Oracle】DataGuard中 Switchover 主、备切换
  10. 将mysql驱动包添加到项目依赖
  11. SpringBoot2.6.5整合CXF框架
  12. 建立数据地图,盘活数据资产!
  13. 【问题解决】This scheduler instance is still active but was recovered by another instance in the cluster.
  14. web前端响应式设计总结
  15. Excel表格批量更改出生年月格式
  16. python远程操控超微服务器(IPMI)、电脑开机(WOL)
  17. vsftpd设置被动模式_Linux下vsftp怎么设置被动模式?
  18. linux 下 POCO 安装
  19. 太牛了!知道我国快递分拣系统很厉害,但没想到这么厉害!
  20. Unknown column ‘lastName‘ in ‘field list‘报错

热门文章

  1. 最具体的历史centos下一个 postfix + extmail + dovecot + maildrop 安装注意事项2014更新...
  2. WPF中的触发器(Trigger)
  3. GitHub Universe 2021|MS Reactor 邀你共聚年度盛会
  4. 让 Hangfire 使用 MongoDB 存储
  5. C#实例:datagridview单元格合并
  6. 程序出Bug,一定是环境的锅!
  7. ML.NET Cookbook:(12)我想看看模型的系数
  8. 教你如何用Harbor 私有镜像仓库搭建
  9. 一行命令搭建内部的管道
  10. 知名Node.js组件存在代码注入漏洞