ASP.NET Web.Api 插件架构

2024-03-21

您能给我推荐一些有关 Web api 中插件架构的文章或代码示例吗?

目前我正在考虑这种情况:拥有 1 个集中式 api 网关,每个客户端都发送请求,并在 Plugins 文件夹中拥有不同的应用程序控制器。如果有人想添加新服务,请编写自己的控制器并将dll文件放入Plugin文件夹中。


为了在运行时定位控制器类,您可以编写一个程序集解析器,如下所示。

public class MyAssembliesResolver : DefaultAssembliesResolver
{
    public override ICollection<Assembly> GetAssemblies()
    {
        List<Assembly> assemblies = new List<Assembly>(base.GetAssemblies());

        // Add all plugin assemblies containing the controller classes
        assemblies.Add(Assembly.LoadFrom(@"C:\Plugins\MyAssembly.dll"));

        return assemblies;
    }
}

然后,将此行添加到Register中的方法WebApiConfig.

config.Services.Replace(typeof(IAssembliesResolver), new MyAssembliesResolver());

这样,即使控制器类可以来自插件文件夹中的程序集,请求仍然需要发送到单个控制器。例如,如果插件文件夹中的 MyAssembly.dll 包含CarsController,访问此控制器的 URI 将为 /api/cars。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ASP.NET Web.Api 插件架构 的相关文章

  • 如何根据当前日期时间发现财政年度?

    我需要基于当前或今天的日期时间的财政年度 假设我们认为今天的日期是10 April 2011 那么我需要输出为Financial Year 2012在某些情况下 我需要以短格式显示相同的输出FY12 我想以两种方式显示 在我们的要求中 考虑
  • 受 Azure AD B2C 保护的自动化端点测试

    我有一个 WebAPI 应用程序 它使用用户通过凭据登录获得的 Azure B2C 令牌对用户进行身份验证 我现在需要针对我的 WebAPI 编写一些测试 但考虑到我需要登录 我不确定如何自动获取令牌https login microsof
  • 如何使用 iTextSharp 插入 HTML 标记以使用 C# 创建 PDF?

    I am new to iTextSharp API to create PDF I want to Create the a PDF similar shown in following image I have added Table
  • 使用 CustomUrlHelper 覆盖 UrlHelper - ASP.NET CORE 2.0

    有没有办法强制我的 ASP NET Core 2 0 应用程序使用我在各处编写的自定义 UrlHelper 我有一个具有自定义逻辑的类 public class CustomUrlHelper UrlHelper 我希望它能在任何地方使用
  • asp.net c# 将数据集中的数据转换为电子邮件正文?

    从数据集到电子邮件正文的最佳方式是什么 我有一个 net 控制台应用程序 用于根据存储过程的结果发送电子邮件通知 并且想知道如何最好地从 SQL 数据转到电子邮件正文 带有颜色和字体的 html 正文是最好的 但纯文本也可以 thanks
  • 如何在任何给定时刻找到我的网站 (IIS 7/asp.net) 的访问者/用户数量?

    我需要显示有多少用户正在浏览我的网站 该网站运行在iis7上 我们使用的是asp net 3 5 活跃会话的数量是一个好的方法吗 该数字不需要非常准确 不需要历史记录 我只想知道现在有多少用户 在线 并将其显示在页面本身上 您可以为此使用
  • Dockerize 一个网络核心 Web api

    我正在尝试对 aspnetcore webapi 进行 dockerize 我按照这里的教程进行操作 https docs docker com engine examples dotnetcore https docs docker co
  • 如何从代码隐藏中向我的 div 添加点击事件?

    如何从代码隐藏中向我的 div 添加点击事件 当我点击 div 时 会出现一个消息框 其中显示 您想删除它吗 并在框中显示 是 或 否 全部来自后面的代码 while reader Read System Web UI HtmlContro
  • 在 ASP.NET 中生成新的 SessionId

    登录时我想生成一个新的 SessionId 我已经发现一种有效的解决方案 https stackoverflow com questions 1368403 generating a new asp net session in the c
  • ASP.NET - 在 GridView 中显示图像和 pdf

    我想在 asp GridView 中显示 图像 列 这个想法是提供图像的缩略图以及实际尺寸图像的链接 对于某些行 这也可以是 PDF 文档 我想要 PDF 的链接 PDF 或图像存储在 SQL 数据库中 现在我在处理程序 ashx 文件中出
  • 将数据集导出到 EXCEL

    我使用以下代码将数据库表中的字段导出到 Excel 中 我想要做的是能够编写一条 SQL 语句从多个表中检索字段并将其导出到 Excel 中 这段代码只允许我导出一张表 另外 如何显示保存提示对话框 示例代码将不胜感激 非常感谢 prote
  • 发生错误。", ExceptionMessage: "提供的 'HttpContent' 实例无效

    尝试将文件添加到 http 休息调用时出现此错误 responseJson 消息 发生错误 ExceptionMessage 提供了无效的 HttpContent 实例 它确实 正在使用 多部分 参数名称 内容 异常类型 System Ar
  • 允许 .NET WebApi 忽略 DOCTYPE 声明

    我正在尝试通过 WebApi 方法将 XML 反序列化为对象 我有以下课程 XmlRoot IsNullable false public class MyObject XmlElement Name public string Name
  • IIS Express 停止 Web 应用程序后立即关闭正在运行的站点

    我在使用 Visual Studio 2012 的第一天 当我想停止 IDE 中的应用程序时 应用程序仍在 IIS Express 上运行 我可以浏览和使用正在运行的应用程序 但现在不能了 如果我按下停止按钮 IIS 会立即关闭应用程序 因
  • 防止 ASP.Net 中的表单重新提交(不重定向到我自己)

    我有一个带有表单元素的母版页
  • ASP.NET Web Api 2 中的异常处理

    Problem 我需要处理 Web api 2 异常并返回一个具有正确状态代码的丰富对象 401 表示未经授权 404 表示 ContentNotFound 等 以及一些额外信息作为内容 此外 我需要内容看起来像序列化的Exception对
  • ASP.NET Core URL 重写

    我正在尝试将我的网站从 www 重定向到非 www 规则以及 http 到 https https example com https example com 在中间件中 我曾经在 web config 中进行这些重定向更改 例如
  • 无法解析远程名称 - webclient

    我面临这个错误 The remote name could not be resolved russgates85 001 site1 smarterasp net 当我请求使用 Web 客户端读取 html 内容时 出现错误 下面是我的代
  • 两种类型的回发事件

    1 我发现了两篇文章 每篇文章对两种类型的回发事件的分类都略有不同 一位资源说两种类型的回发事件是Changed事件 其中控件实现 IPostbackDataHandler 当数据在回发之间更改时触发 然后Raised事件 其中控件实现 I
  • ASP.NET 中 HTTP 缓存相关标头的有效含义

    我正在 ASP NET 2 0 中开发一个 Web 应用程序 其中涉及通过资源处理程序 ashx 提供图像 我刚刚实现了处理缓存标头和条件 GET 请求 这样我就不必为每个请求提供所有图像 但我不确定我是否完全理解浏览器缓存发生了什么 图像

随机推荐

  • Task.WhenAll 是否在后台线程并行运行任务

    以下2个代码片段的作用相同吗 1 var producer Task Run async gt await bar ReadDataAsync var consumer Task Run async gt await bar WriteDa
  • 如何使用 URL 打开应用程序?

    我已经实施了所有必需的事情 但没有成功 我想从浏览器打开应用程序 但不仅仅是网址架构就像 回调 一样 我有类似的东西 http 11 11 21 114 8081 signup callback signupCode 123 id 20 h
  • 将属性从 CAS 释放到 Spring security

    我在客户端使用 Spring security 3 X 在服务器上使用 CAS 4 0 当我进行 CAS Spring 安全集成时 我能够达到票证验证成功的水平 并能够在客户端获得适当的角色 但我在 casServiceValidation
  • 如何使用 QPainterPath 裁剪图像而不保存图像的其余部分

    我有一个 QPainterPath 我想裁剪一个 QPixmap 图像 这段代码对我有用 但我想使用 PyQt5 内置功能 就像没有 numpy 的 mask read image as RGB and add alpha transpar
  • 如何仅将 font-face 应用于特定范围的 Unicode 字符

    从数据库查询的字符串如下所示 123 Street National Road 3 我用的是字体font family Battambang cursive 使用该字体的 ASCII 字符看起来不错 但字符串中的其他字符看起来有点麻烦 在浏
  • 如何将字符串设置为全部小写[重复]

    这个问题在这里已经有答案了 我有一个char foo SIZE string 并使用正确输入 s 如其中printfs正确的输入 但现在想将其设置为小写 所以我尝试使用 if isupper foo foo tolower foo 即当我这
  • 如何在悬停时有条件地将 css 应用到 mat-row 元素?

    我有一个包含行的表格 当满足特定条件 对于每行 时 背景颜色为浅红色 对于每一行 在悬停时 我将背景更改为浅灰色 问题是 我希望特殊行 那些已经获得浅红色的行 在悬停时用更深的红色着色 而不是像所有其他行一样为灰色 我能得到的最好结果是让红
  • 加载两个自定义库

    我在使用 Composer 从另一个自定义库加载自定义库时遇到一些问题 我有 2 个名为 ia audit trail 和 ia flash 的自定义库 并且 ia audit trail 需要 ia flash 才能工作 审计跟踪 htt
  • ASP.NET MVC 的动态 CSS?

    看起来 NET 社区总体上还没有关注 CSS 编译器 在谷歌搜索中 我没有找到任何相关的东西 使用 ASP NET MVC 的人是否找到了更智能地生成 CSS 的方案 例如 我希望能够通过 Razor 运行我的 CSS 或者将 SASS 移
  • PhpStorm:获取“与其类同名的方法不会是构造函数”的代码检查警告

    好吧 我终于切换到 PHP7 了 我的代码有点旧 将被翻新 一些问题是 class MagicClass function MagicClass etc 这会在执行期间发出弃用警告 已弃用 与其类同名的方法将不会被弃用 PHP 未来版本中的
  • htaccess 强制使用 SSL,RSS 提要除外

    我的网站目前在所有地方都强制使用 SSL 这就是我想要的方式 只是它会导致我的 RSS 驱动新闻通讯和 feedburner 出现问题 因此 我需要对我的提要进行例外处理 有人可以帮助制定正确的 htaccess 规则来实现这一目标吗 我的
  • WebSocket WS SSL

    我正在使用 Google App Engine 托管虚拟机来开发使用 Web 套接字的 NodeJS 应用程序 作为应用程序的一部分 前端需要使用Websockets进行连接 例如 connection new WebSocket wss
  • Jackson 通过字段进行多态反序列化

    比方说 我有一堂课 public class A private UUID typeId private B data public abstract class B private String a public class BChild
  • 向数据帧的日期时间索引中的每个索引添加随机微秒数

    我有一个使用日期时间索引的数据框 由于数据的性质 原始数据中存在重复的行 从而产生重复的索引 我想向每个索引添加随机的微秒数 以使它们唯一 所以 我的索引目前是 2021 06 01 08 58 47 00 00 我希望它是 2021 06
  • java的String.matches方法的正则表达式?

    基本上我的问题是这样的 为什么是 String word unauthenticated word matches a z 返回假 用java1 6开发 基本上我想看看传递给我的字符串中是否包含字母字符 The String matches
  • 当用户单击后退按钮时让 DataTables 保持其状态(没有 stateSave 选项)

    我在 Chrome 和 Edge 中遇到的问题 Go to https datatables net examples basic init zero configuration html https datatables net exam
  • Numpy 总是将邻居获取为 3x3 矩阵

    假设我有一个大小为 5 5 的 2d numpy 数组 我可以使用以下语句获取索引 i j 的邻居 a range 25 a np reshape a 5 5 n a i 1 i 2 j 1 j 2 这非常适合0 lt i j lt 4 我
  • 是否可以在 int 变量中存储浮点值

    我想将浮点值存储在整数变量中并打印该整数变量 并且我想查看浮点值本身 到底能不能做 如果您想查看您的位模式float变量你可以这样做 include
  • 更新 e4 应用程序模型中处理程序开关的 UI 贡献

    I have defined a command global to my e4 application namely the add command So as you can see in the command is to used
  • ASP.NET Web.Api 插件架构

    您能给我推荐一些有关 Web api 中插件架构的文章或代码示例吗 目前我正在考虑这种情况 拥有 1 个集中式 api 网关 每个客户端都发送请求 并在 Plugins 文件夹中拥有不同的应用程序控制器 如果有人想添加新服务 请编写自己的控