Asp.net核心 - 类库的Web Api

问题描述 投票:-1回答:1

我正在尝试制作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错误。这是我的项目结构。

enter image description here

我做错了什么,请帮助我。

c# asp.net-core class-library
1个回答
1
投票

尝试在剃刀类库中安装Microsoft.AspNetCore.Mvc包。在startup.cs中使用:

services.AddMvc().AddApplicationPart(Assembly.Load(new AssemblyName("PkrUni.SMS.Area.Api")));

请参阅here

我通过创建一个asp.net core2.2 MVC项目和razor类库来测试你的场景,没有任何问题。以下是我的结构:

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.