在开发ASP.NET Core项目的过程中,我多次遇到这个异常。
当POSTing返回到MVC控制器时,就会发生这种情况。假设ViewModel看起来是这样的:
using System.Web;
namespace MyNamespace
{
public class MyViewModel
{
public List<SelectListItem> MyOptions { get; set; }
}
}此视图的标题包含以下内容
@model MyNamespace.MyViewModel如前所述,在回发(假设视图中有一个窗体和回发)时,将引发此异常。
处理请求时发生了未处理的异常。'System.Web.PreApplicationStartMethodAttribute‘:无法从程序集'System.Web,Version=4.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f7f11d50a3a’加载TypeLoadException类型。System.ModuleHandle.ResolveType(RuntimeModule模块,int typeToken,IntPtr* typeInstArgs,int typeInstCount,IntPtr* methodInstArgs,int methodInstCount,ObjectHandleOnStack类型)
发布于 2017-12-19 17:11:30
经过几个小时的调试,解决方案被证明是一个不正确的使用语句。
SelectListItem同时存在于System.Web和Microsoft.AspNetCore.Mvc.Rendering中
但是,.NET核心在从System.Web引用时不支持其中的某些元素
只需将using语句更改为以下内容,就可以解决这个问题:
using Microsoft.AspNetCore.Mvc.Rendering;这很可能发生在其他类型中,所以如果您在ASP.NET Core中出现了奇怪的错误,检查System.Web的使用语句可能是个好主意。
https://stackoverflow.com/questions/47891928
复制相似问题