Moh*_*ham 3 asp.net iis hosting iis-express asp.net-core-2.0
通过 Visual Studio 在 ApplicationName 和 IISExpress 中以发布/调试模式启动时,我的应用程序运行良好。
但是一旦部署到 IIS 并启动,我就无法访问主页(主控制器)并且还有导航栏问题和 JQuery 问题。我已经在调试/发布模式下发布了该应用程序,但无济于事。
我的问题主要是我该如何解决这个问题?该应用程序的运行方式应该与在 iisexpress 上本地运行的方式相同,对吗?即使文件丢失(如在调试/发布环境中),家庭控制器也应该按原样访问?
将不胜感激任何帮助并等待根据评论发布更多信息和日志。
编辑 1(包括 Startup.cs):
using Microsoft.AspNetCore;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Identity;
using Microsoft.Extensions.DependencyInjection;
using MTAClassLib.Configuration;
using System.IO;
namespace MTALib
{
public class Program
{
public static void Main(string[] args)
{
var host = BuildWebHost(args);
using (var scope = host.Services.CreateScope())
{
var services = scope.ServiceProvider;
var RoleManager = services.GetRequiredService<RoleManager<IdentityRole>>();
UserRoleSeed.Seed(RoleManager).Wait();
}
BuildWebHost(args).Run();
}
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseIISIntegration()
.Build();
}
}
Run Code Online (Sandbox Code Playgroud)
我在 IIS 上运行 ASP.Net Core 2 时遇到了同样的问题。我不得不
确保您的 project.cs BuildWebHost 方法如下所示
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseKestrel()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseIISIntegration()
.UseStartup<Startup>()
.Build();}
Run Code Online (Sandbox Code Playgroud)我不必将应用程序池更改为 .NET CLR 版本为“无托管代码”。它仍然是“.Net CLR Version v4.0.30319”
这解决了我的问题。
归档时间: |
|
查看次数: |
5266 次 |
最近记录: |