【发布时间】:2014-03-03 20:31:23
【问题描述】:
我正在尝试开始使用 Mono 框架,但遇到了许多问题,最近的一个问题让我很恼火。我已经到处寻找解决方案,但无法解决这个问题。
环境
Ubuntu 12.04(在 Hyper-V 虚拟机上)
Visual Studio 2012(完全更新)
ASP.NET MVC 4
.NET 框架 4
Mono 3.4.0(使用 make 直接从 git 拉取和编译)
XSP Mono.WebServer2 0.2.0.0(也来自 git)
我的单声道安装几乎完全按照this answer 的说明进行。会发生什么:
- 我在 VS 2012 中使用默认选项创建了一个新的 MVC 4 项目。
- 我使用文件系统发布配置文件发布了上述应用程序,而没有更改任何引用的 DLL 的“本地复制”设置。
- 然后,将文件 FTP 到 Ubuntu VM 并将它们全部复制到网站主文件夹(/var/www/mvc,我将其配置为 Apache2 的默认文件夹)。
-
cd /var/www/mvc在 bash 提示符下运行xsp4。 - 点击服务器/端口并收到此错误:
System.InvalidOperationException
未找到视图“索引”或其主视图,或者没有视图引擎支持搜索的位置。搜索了以下位置:
~/Views/Home/Index.aspx
~/Views/Home/Index.ascx
~/Views/Shared/Index.aspx
~/Views/Shared/Index.ascx
~/Views/Home/Index.cshtml
~/Views/Home/Index.vbhtml
~/Views/Home/Index.cshtml
~/Views/Home/Index.vbhtml
说明:HTTP 500。处理请求时出错。
详细信息:非网络异常。异常来源(应用程序或对象的名称):System.Web.Mvc.
异常堆栈跟踪:
at System.Web.Mvc.ViewResult.FindView(System.Web.Mvc.ControllerContext context) [0x00000] in <filename unknown>:0
at System.Web.Mvc.ViewResultBase.ExecuteResult(System.Web.Mvc.ControllerContext context) [0x00000] in <filename unknown>:0
at System.Web.Mvc.ControllerActionInvoker.InvokeActionResult(System.Web.Mvc.ControllerContext controllerContext, System.Web.Mvc.ActionResult actionResult) in <filename unknown>:0
at System.Web.Mvc.ControllerActionInvoker+<>c__DisplayClass1a.<InvokeActionResultWithFilters>b__17 () [0x00000] in <filename unknown>:0
at System.Web.Mvc.ControllerActionInvoker.InvokeActionResultFilter(IResultFilter filter, System.Web.Mvc.ResultExecutingContext preContext, System.Func`1 continuation) [0x00000] in <filename unknown>:0
版本信息:3.4.0(master/830c517 Fri Feb 28 16:03:26 CST 2014); ASP.NET 版本:4.0.30319.17020
我尝试了各种编译组合(针对 4.5 而不是 4.0,使用 MVC 3 而不是 4)、removed WebPages.OAuth.dll、复制本地化的各种参考组合,以及详尽的网络搜索……都无济于事。这与我的 Mono 版本有关吗? XSP?这个问题有明确的解决方案吗?
更新
如果我将 .NET Framework 4.5 与 MVC 4 项目作为目标,错误将变为:
System.IO.FileNotFoundException
无法加载文件或程序集“log4net,版本=1.2.11.0,文化=中性,PublicKeyToken=669e0ddf0bb1aa2a”或其依赖项之一。
说明:HTTP 500。处理请求时出错。
详细信息:非网络异常。异常来源(应用程序或对象的名称):DotNetOpenAuth.Core.
异常堆栈跟踪:
at DotNetOpenAuth.Logger.Create(System.String name) [0x00000] in <filename unknown>:0
at DotNetOpenAuth.Logger.CreateWithBanner(System.String name) [0x00000] in <filename unknown>:0
at DotNetOpenAuth.Logger..cctor() [0x00000] in <filename unknown>:0
我没有使用 log4net。
【问题讨论】:
-
好像要渲染索引页,你试过创建一个吗?
-
有一个索引页面,默认是MVC 4模板创建的。
-
在你的views文件夹里面必须有一个home文件夹,里面应该包含Index.cshtml文件。如果您没有索引文件,请手动添加。
-
@Biplov13 - 是的,它在里面。正如我对@T McKeown 所说,MVC 4 项目模板默认创建该文件。
标签: asp.net-mvc asp.net-mvc-4 mono mod-mono xsp