找不到剃刀模板
问题描述:
我尝试了第一次使用ASP.NET Core RC2。我设法让我的控制器工作 - 如果控制器返回Content("hello world")
,我看到字符串“hello world”返回到我的浏览器。找不到剃刀模板
如果控制器返回View()
虽然,我得到
观“索引”没有发现错误。搜索了以下位置:/Views/Controller/Index.cshtml ...
我确认该视图位于文件夹结构中的正确位置,遵循典型约定。我知道如何在其他版本的ASP.NET中进行这项工作。但是,这是我第一次使用ASP.NET Core,我试图手工配置它,所以我想知道我错过了什么 - 也许我需要一些东西来注册Razor,或者注册模板的搜索路径?
在我的project.json
我有依赖Microsoft.AspNetCore.Mvc
和Microsoft.AspNetCore.Razor
。
答
的工作Program.cs
文件ASP.NET核心RC2看起来是这样的:
public class Program
{
public static void Main(string[] args)
{
var host = new WebHostBuilder()
.UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseStartup<Startup>()
.Build();
host.Run();
}
}
如果ASP.NET核心是抱怨不能够找到文件,确保UseContentRoot(Directory.GetCurrentDirectory())
存在。这将设置Razor用来搜索视图的“基本”路径。
你是用Visual Studio或其他方式搭建新项目的吗? –
不,试图通过手工完成 - 命令行工具的存在似乎应该使VS不那么关键 – wrschneider
你有'var builder = new ConfigurationBuilder()。SetBasePath(env.ContentRootPath)[...]在你的'Startup'方法中? –