【问题标题】:How to remove ErrorViewModel when using dotnet core with MVC将 dotnet core 与 MVC 一起使用时如何删除 ErrorViewModel
【发布时间】:2019-06-16 03:57:09
【问题描述】:

如果 ErrorViewModel 从我的项目中删除,它将无法运行,在 app.UseMvc() 失败并出现错误:

System.TypeLoadException: '无法加载类型 来自程序集“DocumentGenerationService, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”的“DocumentGenerationService.Models.ErrorViewModel”。

它是一个带有 mvc 的 dotnet core 2.2 应用程序。我已经删除了应用程序不需要的所有内容,包括所有视图,因为这是一个 webapi 项目。

为什么我不能从项目中删除 ErrorViewModel?这让我很难过。

作为参考,下面是启动类的外观:

public class Startup
    {
        ...

        public void ConfigureServices(IServiceCollection services)
        {
            services.AddCors();
            services.AddSignalR();

            services.AddMvc()
                .SetCompatibilityVersion(CompatibilityVersion.Version_2_2);

            ...
        }

        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
           ...

            app.UseMvc();
        }
    }

任何想法如何摆脱 ErrorViewModel 类并让项目运行?或者解释为什么不可能?

感谢 StackOverflowers!

【问题讨论】:

    标签: asp.net-mvc asp.net-core .net-core


    【解决方案1】:

    我遇到了同样的问题,以下解决方案对我有用:

    1. 删除所有与 ErrorViewModel 相关的文件,如控制器、视图等...
    2. 如果 Visual Studio 已打开,请关闭它
    3. 转到源目录并删除objbin 目录
    4. 使用 Visual Studio 打开项目并运行它

    现在它应该像一个普通的 WebApi 项目一样工作了。

    【讨论】:

      【解决方案2】:

      首先欢迎来到 Stack Overflow 社区。​​p>

      现在从模型文件夹中删除ErrorViewModel 后,您需要执行以下操作以删除ErrorViewModel 相关代码:

      • HomeController 中删除Error 方法
      • Views/Shared文件夹中删除Error.cshtml文件
      • 现在检查Views 文件夹中的_ViewImports 文件。如果有任何以@using 开头的红线,请删除此行。

      现在构建解决方案并再次运行。希望它现在可以优雅地运行。

      【讨论】:

      • 谢谢@TanvirArjel。我已经删除了所有这些东西。没有 HomeController(我只需要一个),也没有 Views。使用 mvc 的唯一原因是路由。
      猜你喜欢
      • 2019-11-02
      • 1970-01-01
      • 1970-01-01
      • 2016-11-13
      • 2020-11-20
      • 2022-06-28
      • 1970-01-01
      • 2023-03-14
      • 2017-07-25
      相关资源
      最近更新 更多