我正在尝试制作n层应用程序,其中web api保存在不同的类库中。我在不同的类库中创建了一个TestController
控制器类,我的代码就像这样
using Microsoft.AspNetCore.Mvc;
using System;
using System.Collections.Generic;
namespace PkrUni.SMS.Api
{
[ApiController]
[Produces("application/json")]
[Route("api/[controller]")]
public class TestController : ControllerBase
{
public IEnumerable<string> Get()
{
return new string[] { "Chris", "Hadfield" };
}
}
}
现在我的问题是如何在我的主项目中访问此web api。我已经在主项目上添加了对该类库的引用,但它不起作用。我的api不工作。尝试访问api时出现404 Page Not Found错误。这是我的项目结构。
我做错了什么,请帮助我。
尝试在剃刀类库中安装Microsoft.AspNetCore.Mvc
包。在startup.cs中使用:
services.AddMvc().AddApplicationPart(Assembly.Load(new AssemblyName("PkrUni.SMS.Area.Api")));
请参阅here。
我通过创建一个asp.net core2.2 MVC项目和razor类库来测试你的场景,没有任何问题。以下是我的结构: