1. 程式人生 > >MVC5在Mono上的各種坑

MVC5在Mono上的各種坑

買了Macbook後,各種事情的糾纏,都沒好好地用過OSX系統.
果斷的裝上了xcode和mono,還有monodevelop.
然後把專案移植到mono上執行,各種問題.

然後第一個問題來了
許可權不足:

  System.UnauthorizedAccessException Access to the path "/Library/Frameworks/Mono.framework/Versions/4.0.0/etc/mono/registry" is denied.

解決方案:

sudo mkdir /Library/Frameworks/Mono.framework/Versions/4.0.0/etc/mono/registry
sudo chmod g+rwx /Library/Frameworks/Mono.framework/Versions/4.0.0/etc/mono/registry   

許可權解決,很快第二個問題又來了

  Could not locate Razor Host Factory type: System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35

解決方案:

把 5.2.0.0 改成正確的版本,我的是 5.2.3.0

接著第三個問題也出現了

  不支援@Styles.Render("~/bundles/bootstrap_css")

解決方案

不支援就刪掉,改成直接引用.

接著第四個問題接踵而來

  Method 'RouteCollection.get_AppendTrailingSlash' not found.

解決方案

原來是不支援部分頁,把所有使用到部分頁的程式碼幹掉@Html.Partial("_LoginPartial")

最後過關斬將,總算跑起來了,但不知道後面還有什麼坑,正式專案還是不搞mono好.