Мы создаем существующий сервер веб-API для обслуживания сайтов (-ов) наряду с существующим API. Я слабо придерживаюсь этой статьи.
Вот что выглядит мой Global.asax.cs:
public class WebApiApplication : System.Web.HttpApplication
{
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
GlobalConfiguration.Configure(WebApiConfig.Register);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
AutoMapperConfig.RegisterMappings();
var host = new WebHostBuilder()
.UseKestrel()
.UseWebRoot("wwwroot")
.UseIISIntegration()
.UseStartup<Startup>()
.Build();
host.Run();
}
}
и Startup.cs:
public partial class Startup
{
public void Configure(IApplicationBuilder app)
{
app.UseDefaultFiles();
app.UseStaticFiles();
}
}
Когда я запускаю проект, я получаю сообщение об ошибке
Невозможно загрузить DLL 'libuv': указанный модуль не найден. (Исключение из HRESULT: 0x8007007E)
libuv - это зависимость пустельги. Если я вручную скопирую его из папки пакетов в папку bin, он будет работать. Это, похоже, имеет смысл с этим комментарием GitHub. Теперь, когда project.json удаляется, как я могу его скопировать автоматически?
Некоторые полагают, что он не знает, следует ли использовать 32 или 64-битную версию libuv, потому что платформа имеет значение Any CPU в свойствах проекта. Я попытался установить его на x64 в настройках решения и проекта, и проблема не устранена.
Как я могу автоматически копировать libuv.dll прямо в каталог сборки?
Я не рассматриваю включение файла в проект (а не в папку с пакетами) и установку его для копирования в выходной каталог реального решения, только обходным путем. Я надеюсь найти решение, а не обходное решение.