C# 将.NET核心ASP应用程序重定目标为.NET 4.6.1时如何重构入口点
我正在尝试用ASP.NET MVC WebApi和Angular 6前端建立一个项目。该项目应该以.NET4.6.1为目标,因为我没有跨平台的需求。尽管如此,我还是想使用.NET core项目模板,因为它有一些我在开发和部署过程中需要的特征:C# 将.NET核心ASP应用程序重定目标为.NET 4.6.1时如何重构入口点,c#,asp.net-core,C#,Asp.net Core,我正在尝试用ASP.NET MVC WebApi和Angular 6前端建立一个项目。该项目应该以.NET4.6.1为目标,因为我没有跨平台的需求。尽管如此,我还是想使用.NET core项目模板,因为它有一些我在开发和部署过程中需要的特征: VS中没有明确的文件管理,也就是说,我不需要在VS中添加/删除文件。项目结构与光盘上的文件结构相同,可以实时更新 默认情况下IIS用作应用程序根的wwwroot目录 一个很好的参考组织,包括npm包 到目前为止,我已经使用Visual Studio中的
- VS中没有明确的文件管理,也就是说,我不需要在VS中添加/删除文件。项目结构与光盘上的文件结构相同,可以实时更新
- 默认情况下IIS用作应用程序根的wwwroot目录
- 一个很好的参考组织,包括npm包
netcoreapp2.1
更改为net461
IHttpActionResult
(.NET 4.6.1而不是ActionResult
)(.NET核心)Program.cs
不包含静态Main()
方法作为入口点(这很有意义,因为我在步骤4中删除了它)
接下来,我尝试创建一个入口点,用于启动在global.asax.cs
中定义的应用程序:
public class Program
{
public static void Main(string[] args)
{
var application = new WebApiApplication();
application.Init();
Console.ReadLine();
}
}
使用global.asax.cs:
public class WebApiApplication : System.Web.HttpApplication
{
protected void Application_Start()
{
GlobalConfiguration.Configure(WebApiConfig.Register);
}
}
应用程序编译并运行。浏览器启动。然后什么也不发生
我的主要问题是:
将目标更改为.NET 4.6.1后,如何重构.NET核心ASP项目的入口点?
我的方法是否正确?我很感谢您的回答以及与解释该主题的资源的链接
和相关的:
根据我上面的要求,将.NET core应用程序重定向到.NET 4.6.1以获得Visual Studio中的.NET core项目结构和行为是否正确?您似乎对什么是.NET core和什么是ASP.NET core感到非常困惑。NET core是一个目标框架,而ASP.NET core是一个库。您正在混合ASPNET Core与ASP.NET的内容将永远无法工作,因为ASP.NET Core不基于.NET Framework,而ASP.NET是 ASP.NET Core的理念是,您可以将.NET Core或.NET Framework视为合适的目标,而无需修改任何内容。事实上,从ASP.NET Core应用程序将.NET Framework作为目标非常简单:
属性:
<TargetFramework>net471</TargetFramework>
<TargetFrameworks>net471;netcoreapp2.0</TargetFrameworks>
net471
属性:
<TargetFramework>net471</TargetFramework>
<TargetFrameworks>net471;netcoreapp2.0</TargetFrameworks>
net471;netcoreapp2.0
您似乎对什么是.NET Core和什么是ASP.NET Core感到非常困惑。NET Core是一个目标框架,而ASP.NET Core是一个库。您将ASP.NET Core与ASP.NET内容混合在一起,这是永远不会起作用的,因为ASP.NET Core不基于.NET framework,而ASP.NET是 ASP.NET Core的理念是,您可以将.NET Core或.NET Framework视为合适的目标,而无需修改任何内容。事实上,从ASP.NET Core应用程序将.NET Framework作为目标非常简单:
属性:
<TargetFramework>net471</TargetFramework>
<TargetFrameworks>net471;netcoreapp2.0</TargetFrameworks>
net471
属性:
<TargetFramework>net471</TargetFramework>
<TargetFrameworks>net471;netcoreapp2.0</TargetFrameworks>
net471;netcoreapp2.0
谢谢你!我不知道我在路上在哪里迷路了。谢谢你!我不知道我在路上在哪里迷路了。你为什么不发表评论就投了反对票?一定是一些非常沮丧的人。你为什么不发表评论就投了反对票?一定是一些非常沮丧的人。