最近Asp.Net 5的RC1出來了
VS2015的Update1也開始進入RC階段
嗯,微軟尿性,是時候轉移到VS2015了
開始踩坑之旅
裝好VS2015后,當然是開始折騰ASP.Net 5嘛
建了個ASP.Net 網站,測試一下,嗯,DNX beta5版本,一切正常
試試Nuget,發現這速度簡直不能忍
把所有包都升級到最新后,發現引用全是感嘆號
研究一番后發現,需要到程序包管理器里運行dnu restore命令,也就是還原程序包
經過漫長、漫長的等待,媽蛋,終於下載完所有包了
調試一下,發現報錯了……
必應了一下,發現要升級DNX版本,用到命令dnvm upgrade
升級完后需要到項目設置里修改DNX版本為RC1
繼續調試,擦,又報錯,Microsoft.Dnx.Host.Clr.EntryPoint找不到了
查了下又發現,從beta8開始,這貨不能用IISExpress了
需要用到Kestrel這貨
好吧,從Nuget里添加
Microsoft.AspNet.IISPlatformHandler
Microsoft.AspNet.Server.Kestrel
這兩個包
添加完后,在project.json的commands里添加
"kestrel": "Microsoft.AspNet.Server.Kestrel"
這樣就會多出一個啟動選項kestrel,然后就用這個啟動
之后開始鼓搗DNX類庫
但是又生成失敗,奇怪的是錯誤列表里沒東西
看看輸出里的生成,發現這個Microsoft.DNX.PackageManager找不到了
真是坑爹,去查了一下,發現每次都要手動更新Microsoft ASP.NET and Web Tools 2015這貨
RC1版下載地址:https://www.microsoft.com/en-us/download/details.aspx?id=49959
選擇WebToolsExtensionsVS14.msi下載
WebToolsExtensionsVSLP14_chs.msi語言包
下載安裝之后終於一切正常了……
總結:
每次ASP.Net 5更新,需要做以下工作
1.dnvm upgrade,升級DNX版本並
2.設置項目DNX版本
3.NuGet升級包至相應版本,使用Update-Package -IncludePrerealease升級到最新版
4.如果網站項目升級前是Beta7之前版本,刪除舊的Host包,添加包
Microsoft.AspNet.IISPlatformHandler
Microsoft.AspNet.Server.Kestrel
5.下載安裝最新Microsoft ASP.NET and Web Tools 2015
搜索地址:https://www.microsoft.com/en-us/search/result.aspx?q=Microsoft+ASP.NET+and+Web+Tools+2015+&form=MSHOME#downloads