我在同一个项目中有两个解决方案,一个是完整的API,另一个是我的ApiControllers的一个库(库)。有没有一种简单的方法可以在我的Web API项目中使用我的库中的ApiControllers?我可以在我的解决方案中使用库项目中的ApiControllers吗?
0
A
回答
1
是的,在Web API中,您可以通过提供自定义IAssembliesResolver
来使用来自外部装配的控制器。
public class CustomAssemblyResolver : DefaultAssembliesResolver
{
public override ICollection<Assembly> GetAssemblies()
{
var assemblies = base.GetAssemblies();
var controllersAssembly = Assembly.LoadFrom(@"C:\PATH_TO_MY_CONTROLLERS_ASSEMBLY");
assemblies.Add(controllersAssembly);
return assemblies;
}
}
,或者如果你不想手动加载DLL
public class CustomAssemblyResolver : DefaultAssembliesResolver
{
public override ICollection<Assembly> GetAssemblies()
{
var assemblies = base.GetAssemblies();
var controllersAssembly = typeof(SomeTypeFromControllersLibrary).Assembly;
assemblies.Add(controllersAssembly);
return assemblies;
}
}
你就必须注册它针对您的HttpConfiguration
:
httpConfiguration.Services.Replace(typeof运算( IAssembliesResolver),新的 CustomAssemblyResolver());
更多信息: http://www.strathweb.com/2012/06/using-controllers-from-an-external-assembly-in-asp-net-web-api/
相关问题
- 1. 我可以在2.0 NET解决方案中使用4.0 NET项目吗?
- 2. 我可以在库项目中使用项目库吗?
- 3. 我可以在使用Subversion的团队中使用Visual Studio项目和解决方案文件吗?
- 4. 我可以在定义的解决方案中使用roslyn分析仪吗?
- 5. 我可以在VS2008的不同项目/解决方案中使用不同的支撑样式吗?
- 6. 我可以在Visual Studio项目模板中创建“解决方案”级别的项目吗?
- 7. 在codeplex中删除我的解决方案的一个项目
- 8. 是否可以在模板项目/解决方案中多次使用项目?
- 9. 我可以在一个解决方案中使用多个子域吗?
- 10. 我可以在一个解决方案中运行多个项目以在VS 2010 Ultimate中进行调试吗?
- 11. 我可以在BSD/X11许可项目中使用LGPL库吗?
- 12. 我可以在我的项目中使用Magento的类吗?
- 13. 在Visual Studio中,我可以阻止并行构建解决方案中的某些项目吗?
- 14. 我的VS 2008解决方案中的项目每次重建
- 15. 我可以使用GTK可以在Visual Studio和MonoDevelop/Xamarin Studio中使用的C#解决方案吗?
- 16. 需要一个解决方案,我的项目,以取代目前的.NET Remoting的解决方案
- 17. 我可以在解决方案之间共享实体吗?
- 18. 我找我的项目的报表解决方案
- 19. 我可以在我的项目中使用科幻效果吗?
- 20. 我可以在Orchard CMS中使用我的Ninject .NET项目吗?
- 21. 我可以在我的项目和Nuget包中使用DeepZoomTools.dll吗?
- 22. 我可以在我的项目中使用create-react-app吗?
- 23. 我可以在我的ASP.net网站/项目中使用jQuery吗?
- 24. 解决方案中的项目
- 25. TFS中的子项目解决方案
- 26. 3解决方案中的MVC项目
- 27. 在解决方案中测试项目
- 28. WiX源可以参考解决方案中其他项目的NuGet包吗?
- 29. 一个解决方案可以包含Xcode中的许多项目吗?
- 30. MSBuild解决方案与解决方案中的项目引用的DLL
您可以从其他参考一个项目,如果这是你在问什么? – germi
是的,我已经有了,但的WebAPI不会使用该ApiControllers其他项目。 – jfamvg