运用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,并且更改身份验证为不适用身份验证。

图片 1

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

图片 2

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的兼容性异常好了。

图片 3

任何的兼容性问题都是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

图片 4

相关文章