c# - 获取程序集中的类型(错误 : System. Reflection.ReflectionTypeLoadException)

标签 c# asp.net-mvc entity-framework system.reflection

我收到类型为“异常详细信息:System.Reflection.ReflectionTypeLoadException:无法加载一种或多种请求的类型。检索 LoaderExceptions 属性以获取更多信息。”的异常。使用以下代码:

public IEnumerable<Type> FindClassesOfType(Type assignTypeFrom, IEnumerable<Assembly> assemblies, bool onlyConcreteClasses = true)
    {
        foreach(var a in assemblies)
        {
            foreach (var t in a.GetTypes())

我需要获取每个程序集中定义的类型,但似乎无法生成。

我已经通过删除 dll、清理解决方案、重新加载解决方案等执行了与创建错误程序集相关的所有典型过程,但没有任何反应。

我想征求意见,以便通过找到一种方法来检索错误的更多信息,或者找到哪个程序集产生问题或类似的东西来解决这个问题。当前的异常消息非常模糊,无法意识到是哪个问题。

ps:附加信息,当我运行重建操作时,所有进程都正确生成,没有错误。

最佳答案

错误消息说出了你需要的一切,真的:

try {
    // your code
} catch (ReflectionTypeLoadException ex) {
    // now look at ex.LoaderExceptions - this is an Exception[], so:
    foreach(Exception inner in ex.LoaderExceptions) {
        // write details of "inner", in particular inner.Message
    }
}

关于c# - 获取程序集中的类型(错误 : System. Reflection.ReflectionTypeLoadException),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6086633/

相关文章:

c# - 每天在特定时间在 Web 服务上运行预定进程

javascript - 在单个页面上动态创建完整的一对多关系

javascript - 使用 Angular js 在编辑操作期间设置多个 dropdownist 值

entity-framework - 没有给出与所需的形式参数“GenericRepository <Incident> .context的上下文”相对应的参数。GenericRepository(dbContext)

c# - EntityClient Provider - 它到底做了什么?

c# - 从字节数组读取 C# 中的 C/C++ 数据结构

javascript - 将坐标从 EPSG 3857 转换为 4326

c# - 构建 C++/CLI 可执行文件时出现警告 C4691 : ignore or repair?

asp.net - 为什么 Web 架构应该是松耦合的?

c# - 保存具有所有必需属性的对象时 Entity Framework 验证错误