最新的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
使用Visual Studio 2015 开发ASP.NET MVC 5 项目部署到Mono/Jexus的更多相关文章
-
Visual Studio 2015 开发 ASP.NET 5 有何变化?
本篇博文目录: ASP.NET 5 模版 ASP.NET 5 目录结构 前端管理工具 无编译开发 Microsoft Git Provider 智能感知和错误信息 Smart Unit Testing ...
-
Visual Studio 2015 开发 ASP.NET 5 有何变化?(转)
出处:http://www.cnblogs.com/xishuai/p/visual-studio-2015-preview-asp-net-5-change.html 本篇博文目录: ASP.NET ...
-
Visual Studio 2015 开发 ASP.NET 5
在以往微软发布或更新 Visual Studio 版本时,我们开发 ASP.NET 应用程序,带给我们的变化其实并不是很大,或者说你根本就感受不到变化,你感受到的只是下载安装了几个 G 的 Updat ...
-
Visual Studio 2015创建ASP.NET MVC流程
本文链接:https://blog.csdn.net/begindong/article/details/68059437本人这两天第一次对c#进行系统学习,写出来做个学习记录和大家分享,以下有什么错 ...
-
Visual Studio 2015打开ASP.NET MVC的View提示";Object reference not set to an instance of an object";错误的解决方案
使用Visual Studio 2013打开没有问题,但Visual Studio 2015打开cshtml就会提示"Object reference not set to an insta ...
-
Visual Studio 2015和ASP.NET 5中可用的前端开发工具集
最近微软发布了一本白皮书,谈到了一些可以和Visual Studio 2015和ASP.NET 5配合使用的JS/前端Web开发工具(比如:函数库.任务执行器.框架等). 由于现在前端开发的生态系统在 ...
-
Visual Studio 2015开发Android App问题集锦
Visual Studio 2015开发Android App 启动调试始终无法完成应用部署的解决方案 创建一个Android App项目后,直接启动调试发现Visual Studio Emulato ...
-
Visual Studio 2013 Preview - ASP.NET, MVC 5, Web API 2新功能搶先看
Visual Studio 2013 Preview - ASP.NET, MVC 5, Web API 2新功能搶先看 來自TechEd North America 2013的第一手消息 以下資訊均 ...
-
Visual Studio 2015开发Qt项目实战经验分享(附项目示例源码)
Visual Studio 2015开发Qt项目实战经验分享(附项目示例源码) 转 https://blog.csdn.net/lhl1124281072/article/details/800 ...
随机推荐
-
Linux安装MySQL
步骤: 1 [qq@localhost Desktop]$ su root //以root身份进入 Password:(默认为空) 2 [root@localhost Desktop]# yum ...
-
扩展 jquery miniui 组件实现自动查询数据
主题 之前写过一篇文章分享了公司basecode查找数据后台是怎么实现的(http://www.cnblogs.com/abcwt112/p/6085335.html).今天想分享一下公司前台是怎么扩 ...
-
Linux 系统常用命令汇总(二) vi 文本编辑
文本编辑 vi 命令 作用 +文件名 编辑文本文件,若文件不存在同时创建该文件 Ctrl+f 向后翻一页 Ctrl+b 向前翻一页 Ctrl+d 向后翻半页 Ctrl+u 向前翻半页 + 光标移动到下 ...
-
linux安全
http://drops.wooyun.org/ 最专业的安全知识分享平台 http://www.freebuf.com/ 关注黑客与极客 http://book.beifabook.com/prod ...
-
phpeclipse常用快捷键
phpeclipse常用快捷键
-
[Objective-c 基础 - 2.9] 类的本质
A.概念 类对象:类也是一个对象,是Class类型的对象 实例对象:创建的对象,有一个isa指针指向类 B.操作 获取内存中的内对象 1. 使用实例对象获取 Class c = [p class] ...
-
c# textbox的滚动条总是指向最底端
当我第一次添加滚动条时候,我发现滚动条总是跑向上方,经过研究 解决方案如下: this.textBox1.Focus(); 获取焦点 this.textBox1.Select(this.textBox ...
-
Spring框架学习笔记(2)——IOC&;DI
IOC:控制反转,创建对象的权利交给Spring,Spring会自动创建对象. DI:依赖注入,操作的对象靠Spring注入,如果不使用Spring,对象的属性值是要靠setter方法来添加的,使用S ...
-
如何在Linux中使用命令行卸载软件
您可以使用“dpkg”命令来查看您的计算机,按“Ctrl + Alt + T”的所有已安装包的列表,打开一个终端窗口. 在提示符下键入以下命令,然后按Enter键.dpkg -- list 要卸载程序 ...
-
sas 配置文件和AutoExec
AS代码中常常会用用到一些个人习惯的编码定义,每次重复写,效率会很低,这时可以通过AutoExec 写入到系统默认项里. 如我最经常使用的: OPTIONS NOCENTER LS=MAX PS=MA ...