在 ASP.NET MVC 5 Mono 中使用 Razor Url 助手时找不到方法 'RouteCollection.get_AppendTrailingSlash'
Method 'RouteCollection.get_AppendTrailingSlash' not found when using Razor Url helpers in ASP.NET MVC 5 Mono
我正在创建一个 ASP.NET MVC 5 application in Mono(Ubuntu 14.4,Monodevelop 5.9,Mono JIT 编译器版本 4.0.1)。
我看到某些剃须刀组件无法识别,例如:
@Url.Action
当我添加这个时
<a title="Notifications" href="@Url.Action("_Listing","Home")"> Home </a>
我收到这个错误:
System.MissingMethodException
Method 'RouteCollection.get_AppendTrailingSlash' not found.
System.Web.Mvc
是从包中引用的。还有什么要求吗?
更新: 目前我尝试了这些解决方案:
Does the Razor View Engine work for Mono?
Is it possible to use Razor 2.0 view engine under mono?
-
-
它似乎是一个 known issue,但我坚信应该有一些 hack 才能起作用。我也尝试使用 aspx 引擎但没有收获。
截至目前,解决此问题的唯一方法是从 GitHub 的源代码构建和安装 Mono。
可以参考Xamarin Bugzilla问题:https://bugzilla.xamarin.com/show_bug.cgi?id=16475#c13
但是,那么,您最终可能会 运行 进入其他领域...。对于 Mono 人员来说,这似乎不是一个高优先级;相反,Xamarin/mobile 故事似乎获得了最多的关注。
The problem now seems to be resolved.
同时,我使用了这个简单的 hack: 我们可以使用基本的 HTML 语法,而不是使用 ASP.NET MVC 助手:
锚类组件:
<a href="~/ControllerName/ActionName"> Test </a>
对于类似组件的形式:
<form action="~/ControllerName/ActionName">
<br>
<input type="text" placeholder="Test"/>
<br>
<input type="submit" value="Submit"/>
</form>
当然,它并没有解决这个错误,但至少它可以在 Mono 上获得 ASP.NET MVC 5 项目 运行。
感谢 @teovankot 指出这一点。
afaik 的最新消息是 Miguel 拒绝了我的 minimal pull request last year,但您可以在该 Pull Request 的底部看到其他一些人已经在 github 上构建,其中包括这个等等。
我看不到有人接受了单声道主线的拉取请求。我能看到的前进方向是,如果你 know/can 说服 Xamarin 团队中的某个人来推动这个。
或者,帮助在单声道上获取现已开源的 .Net 代码 运行。
但是 https://github.com/gentoo/dotnet 看起来很有趣:它拉动了这个和其他一些 MVC5 更改。
我正在创建一个 ASP.NET MVC 5 application in Mono(Ubuntu 14.4,Monodevelop 5.9,Mono JIT 编译器版本 4.0.1)。
我看到某些剃须刀组件无法识别,例如:
@Url.Action
当我添加这个时
<a title="Notifications" href="@Url.Action("_Listing","Home")"> Home </a>
我收到这个错误:
System.MissingMethodException
Method 'RouteCollection.get_AppendTrailingSlash' not found.
System.Web.Mvc
是从包中引用的。还有什么要求吗?
更新: 目前我尝试了这些解决方案:
Does the Razor View Engine work for Mono?
Is it possible to use Razor 2.0 view engine under mono?
它似乎是一个 known issue,但我坚信应该有一些 hack 才能起作用。我也尝试使用 aspx 引擎但没有收获。
截至目前,解决此问题的唯一方法是从 GitHub 的源代码构建和安装 Mono。
可以参考Xamarin Bugzilla问题:https://bugzilla.xamarin.com/show_bug.cgi?id=16475#c13
但是,那么,您最终可能会 运行 进入其他领域...。对于 Mono 人员来说,这似乎不是一个高优先级;相反,Xamarin/mobile 故事似乎获得了最多的关注。
The problem now seems to be resolved.
同时,我使用了这个简单的 hack: 我们可以使用基本的 HTML 语法,而不是使用 ASP.NET MVC 助手:
锚类组件:
<a href="~/ControllerName/ActionName"> Test </a>
对于类似组件的形式:
<form action="~/ControllerName/ActionName">
<br>
<input type="text" placeholder="Test"/>
<br>
<input type="submit" value="Submit"/>
</form>
当然,它并没有解决这个错误,但至少它可以在 Mono 上获得 ASP.NET MVC 5 项目 运行。
感谢 @teovankot 指出这一点。
afaik 的最新消息是 Miguel 拒绝了我的 minimal pull request last year,但您可以在该 Pull Request 的底部看到其他一些人已经在 github 上构建,其中包括这个等等。
我看不到有人接受了单声道主线的拉取请求。我能看到的前进方向是,如果你 know/can 说服 Xamarin 团队中的某个人来推动这个。
或者,帮助在单声道上获取现已开源的 .Net 代码 运行。
但是 https://github.com/gentoo/dotnet 看起来很有趣:它拉动了这个和其他一些 MVC5 更改。