C#学习教程:System.Web可以和ASP.NetCore配合使用,框架完整其中一个站点正在运行.Net4.6和ASP.NetMVC5.xx要使用Razor的新语法,我们想升级此站点以使用.Net4.6和ASP.NetCore我们在我们的站点上使用FormsAuthentication,我们将继续使用它以便用户可以在站点之间移动。(其中一个站点是运行FormsAuthentication的SharePoint站点)我们知道ASP.NetCore没有使用System.Web中的任何内容,但我们需要同时使用控制器(在登录时创建FormsAuthenticationcookie)和HttpModule来验证cookie。我找不到任何有关如何使用完整框架在具有ASP.NetCore的站点中运行system.web的示例。我无法在project.json中添加system.web的依赖项。问题。是否可以从这样的设置中使用system.web?我们如何向system.web添加依赖项,以便System.Web.FormsAuthentication在ASP.NETMVC6中可用。(Controllers/http模块)使用System.Webdll与使用System.Web不同。所有System.Web管道都不会为您的ASP.NETCore应用程序运行,因此您无法执行您想要执行的操作。这可能不会像您想象的那样有效。当您将.NetCoreMVC用于完整框架时,System.Web命名空间确实存在并且在技术上可以被调用,但它不会按照您希望的方式工作。原因是Asp.NetCore和System.Web有着完全不同的请求管道。因此,例如,当使用Asp.NetCoreMVC时,如果您在请求进入时检查HttpContext对象,它将填充您期望的所有信息,但如果您使用System.Web对象检查当前请求,您会看到他们目前没有要求。那是因为当前请求不是通过System.Web管道传入的。如果您愿意,它会通过.NetCore“管道”进入。因此,如果您使用.NetCoreMVC,则需要坚持使用该框架的工具和方法,而不是System.Web中提供的工具和方法。但是,如果您真的愿意,应该可以引用System.Web.dll。如果您使用的是VS2015,则需要获取System.Web.Dll的副本并将其包装在nuget包中,以便建立对它的引用。请参阅此处.netcore1.0visualstudioreferencesexternalDLLVS2017RC具有alpha工具,无需将其包装在NuGet包中,但我无法在我的机器上安装它,因此我个人无法保证。更新:VS2017现在为Asp.NetCore提供了很好的工具并引用了完整的框架Dll。以上就是C#学习教程:System.Web可以和ASP.NetCore一起使用,框架完整。网络收藏不代表立场,如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
