You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET Core MVC项目DLL加载报错:如何获取类型并加载视图?

问题描述

我有一个ASP.NET Core MVC项目生成的ReflectionMvc.dll文件,该项目包含带有Index.cshtml视图的HomeController。我希望在另一个MVC项目中加载此.dll文件,以访问并查看Index页面。

我尝试了以下几种代码实现方式:


第一种尝试代码

var fileName = "ReflectionMvc.dll";

if (File.Exists(fileName))
{
    fileName = Path.GetFileName(fileName);
    Console.WriteLine(fileName + " found!");

    Assembly assembly = Assembly.Load(fileName);

    Type[] types = assembly.GetTypes();

    foreach(Type t in types)
    {
        Console.WriteLine(t.Name);
    }
}

第二种尝试代码

Assembly assembly = Assembly.LoadFile(fileName);

使用该方法时出现如下错误:

System.Reflection.ReflectionTypeLoadException: 无法加载一个或多个请求的类型。
未能加载文件或程序集“Microsoft.AspNetCore.Mvc.Razor, Version=6.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60”。系统找不到指定的文件。


第三种尝试代码

Assembly assembly = Assembly.Load(AssemblyName.GetAssemblyName(fileName));

使用该方法时出现另一错误:

System.IO.FileNotFoundException: 未能加载文件或程序集“ReflectionMvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null, processorArchitecture=MSIL”。系统找不到指定的文件。
文件名称:“ReflectionMvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null, processorArchitecture=MSIL”
在 System.Reflection.RuntimeAssembly.InternalLoad(ObjectHandleOnStack assemblyName, ObjectHandleOnStack requestingAssembly, StackCrawlMarkHandle stackMark, Boolean throwOnFileNotFound, ObjectHandleOnStack assemblyLoadContext, ObjectHandleOnStack retAssembly)


内容的提问来源于stack exchange,提问作者shuvo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 19:45:56