我已經創建了asp.net核心基礎MVC應用程序使用Visual Studio 2017年 我試圖渲染index.cshtml控制檯應用程序 - 無法服務
的時候得到一個錯誤剃刀意見在編譯處理此請求所需的資源時發生錯誤。請查看以下具體的錯誤細節並適當修改您的源代碼。
生成的代碼
缺少一個或多個編譯引用。可能的原因 包括下應用程序的project.json 「buildOptions」失蹤「preserveCompilationContext」屬性。
類型或命名空間名稱「系統」找不到使用系統(你 缺少using指令或程序集引用?)
+ ;
...
我的整個控制檯應用程序是一樣短,因爲它可以:
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.DependencyInjection;
using System;
using System.IO;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
var host = new WebHostBuilder()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseKestrel()
.UseStartup<Startup>()
.Build();
host.Run();
}
}
class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
}
public void Configure(IApplicationBuilder app)
{
app.UseDeveloperExceptionPage();
app.UseMvc();
}
}
public class HomeController : Controller
{
[HttpGet("/")]
public ActionResult Index()
{
ViewBag.Message = "Hello world!";
ViewBag.Time = DateTime.Now;
return View();
}
}
}
我的 「項目」
查看
結構這很有趣,因爲錯誤告訴我必須更改project.json中的某些內容,但是自Visual Studio 2017以來,不再有project.json。
我的看法其實是簡單的靜態HTML文件,不需要任何對模型或任何東西的引用。但是,錯誤都在抱怨缺少類型:
我想我的項目比較web應用程序模板,但我還沒有發現是什麼導致剃刀的觀點不是建立在控制檯應用程序。
我在這裏錯過了什麼?
謝謝。有效。在web應用程序模板的.csproj文件中仍然存在奇怪的設置。 –
至少從您的屏幕截圖看來,您似乎沒有使用ASP.NET Core模板,因爲ASP.NET核心模板未命名爲「ConsoleAppX」,而是「WebApplicationX」 – Tseng