我负责将Java应用程序移植到.Net平台。 我对C#和.Net很有经验,但是我从未从头开始构建类似的东西。
因此,此应用程序由两部分组成:
FrameworkPage<T>
类,我们使用类型T
和一些重写来编写它。而且,该框架有其自己的某些端点。就像myapp/framework/FirstPage
映射到framework/{pageName}
控制器一样,在该控制器中,我们使用通用逻辑来检索该页面的数据。重要的是该框架具有自己的端点。今天,在Java项目中,这两个仅位于不同的文件夹中。将来,我们希望在任何需要的地方重用该框架,因此保持其与任何业务逻辑的独立性很重要。为此,在.Net平台中,我认为将这两个放在我的解决方案中的单独项目中会很有趣。然后,将来很容易将其分离,甚至可以将其编译为dll
以用于其他项目。
这是正确的方法吗?如果是这样,既然有两个Web API应用程序,如何使之成为可能?据我对.Net项目配置的了解,我只有一个启动项目(已部署的项目)。我可以为这些人设置多个启动配置,但只能将它们作为单独的应用程序启动:localhost:XXXX/myapp
和localhost:YYYY/framework
。我需要将框架“放入”应用程序内部:localhost:XXX/myapp/framework/framework-endpoint
。
谢谢!
答案 0 :(得分:0)
使用AddApplicationPart()
找到了一个适合我的解决方案。
基本上,在我的Startup.cs
的{{1}}上,将服务配置为:
BusinessLayerProject
有了这个,如果我的框架控制器具有类似using Framework.Controllers;
// ....
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2)
.AddApplicationPart(typeof(FrameworkController1).Assembly)
.AddApplicationPart(typeof(FrameworkController2).Assembly)
// ...
.AddControllersAsServices();
的路由,则在部署framework/controller1
时可以访问它