ASP.NET Core TypeLoadException无法从程序集“System.Web”加载类型“System.Web.PreApplicationStartMethodAttribute”(
厌伴老儒烹瓠叶,强随举子踏槐花。这篇文章主要讲述ASP.NET Core TypeLoadException无法从程序集“System.Web”加载类型“System.Web.PreApplicationStartMethodAttribute”(相关的知识,希望能为你提供帮助。
在开发ASP.NET Core MVC项目的过程中,我多次遇到此异常。
当POST回MVC控制器时会发生这种情况。假设ViewModel看起来像这样:
using System.Web;
namespace MyNamespace
{
public class MyViewModel
{
public List<
SelectListItem>
MyOptions { get;
set;
}
}
}
此视图的标题包含此内容
@model MyNamespace.MyViewModel
如前所述,在POST返回时(假设View中有一个表单和一个回发),抛出此异常。
处理请求时发生未处理的异常。 TypeLoadException:无法从程序集“System.Web,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a”加载类型“System.Web.PreApplicationStartMethodAttribute”。 System.ModuleHandle.ResolveType(RuntimeModule模块,int typeToken,IntPtr * typeInstArgs,int typeInstCount,IntPtr * methodInstArgs,int methodInstCount,ObjectHandleOnStack类型)答案经过几个小时的调试,该解决方案被证明是一个不正确的使用声明。
SelectListItem
存在于System.Web
和Microsoft.AspNetCore.Mvc.Rendering
但是,当从
System.Web
引用时,.NET Core不支持某些元素只需将using语句更改为以下内容即可解决问题:
using Microsoft.AspNetCore.Mvc.Rendering;
【ASP.NET Core TypeLoadException无法从程序集“System.Web”加载类型“System.Web.PreApplicationStartMethodAttribute”(】这可能与其他类型一起发生,因此如果您在ASP.NET Core MVC中遇到奇怪的错误,最好检查
System.Web
的using语句。推荐阅读
- 如何在静态方法或控制器外的类中获取applicationDbContext的dbContext
- 如何读取.NET Core中属性内的配置(appsettings)值()
- app.shared.module.ts和app.server.module.ts之间的差异
- 控制器未加载.AspNetCore.Identity.Application用户cookie
- ApplicationUser在Asp.Net Core 2.0中的ActionFilter中()
- org.hibernate.MappingException(未知实体:com.app.persistence.Test)
- 修改/删除现有的inapp订阅产品
- 我可以在谷歌玩游戏中使用相同的排行榜和成就安卓游戏
- Android - 从CH Play打开时恢复应用程序