【问题标题】:Multiple assemblies and MapHttpAttributeRoutes();多个程序集和 MapHttpAttributeRoutes();
【发布时间】:2016-06-17 13:48:45
【问题描述】:

我有一个由多个项目组成的解决方案 (.Net 4.6),每个项目都有自己的 MVC 控制器和 api 控制器。

我正在使用属性路由:

config.MapMvcAttributeRoutes(); config.MapHttpAttributeRoutes();

我所有的 MVC 控制器都能正常工作,但只有我的主启动项目中的 API 注册。

这很奇怪,因为 MVC 控制器可以工作,但在同一个程序集中,API 控制器却不能。

注册的处理方式是否不同? 我该怎么做才能解决这个问题?

【问题讨论】:

    标签: c# asp.net-mvc api routing


    【解决方案1】:

    我为此浪费了很多时间,试图找出问题所在。最后我创建了自定义程序集加载器来替换默认的。

    当我为此设置断点时,我可以看到临时文件中有一个陈旧的程序集,它阻止了正确的路径加载。

    现在一切都是开箱即用的,没有我认为应该的额外代码!

    【讨论】:

    • 我遇到了同样的问题。我原以为 MapHttpAttributeRoutes() 只是在 bin 文件夹中的程序集中寻找控制器,或者至少是加载到域中,但不,似乎是在寻找其他地方(临时文件)恼人的。构架;他们用一只手给予,用另一只手拿走......
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-27
    • 2010-12-22
    • 1970-01-01
    • 1970-01-01
    • 2015-12-18
    • 2013-10-19
    相关资源
    最近更新 更多