繁体   English   中英

如何分发 ASP.NET MVC 查看为 NuGet Package

[英]How do I distribute ASP.NET MVC View as a NuGet Package

我有一个 ASP.NET MVC 视图,用于我喜欢的配置。 我可以通过导航到/super-config来访问该视图。 我希望能够在我的 ASP.NET MVC 应用程序中重用该视图。 理想情况下,我希望能够将视图分发为 NuGet package。 Then, if I add the NuGet package to a new ASP.NET MVC app, I could then navigate to /super-config in the ASP.NET MVC app and it would work.

在 ASP.NET MVC 中有没有办法做到这一点? 如果是这样,怎么做?

ASP.NET 核心文档有一个标题为Share controllers, views, Razor Pages and more with Application Parts in ASP.NET Core 的页面 他们有这个代码片段:

public void ConfigureServices(IServiceCollection services)
{
    // Requires using System.Reflection;
    // Requires using Microsoft.AspNetCore.Mvc.ApplicationParts;
    var assembly = typeof(MySharedController).GetTypeInfo().Assembly;
    var part = new AssemblyPart(assembly);
    services.AddMvc()
        .ConfigureApplicationPartManager(apm => apm.ApplicationParts.Add(part))
        .SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
}

自从我使用 ASP.NET MVC 的 .NET 框架版本以来已经有好几年了,现在已经不记得怎么做了。 搜索了两分钟,我找不到我正在寻找的答案。 应该有一个 API 告诉 MVC 哪些附加程序集搜索 MVC 控制器。 但我发现 这篇博文可能会有所帮助。 当然,在我发布这个答案几秒钟后,我在我链接的另一篇博客文章的链接下方找到了一篇博客文章,其中包含我正在寻找的信息。 无论如何, 这篇博文展示了如何做到这一点,尽管我完全不推荐使用Assembly.Load 改用typeof(MyController).Assembly

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM