【问题标题】:Building modular asp core angular application构建模块化 asp core angular 应用程序
【发布时间】:2019-10-13 18:57:53
【问题描述】:

我来这里是因为我遇到了问题。在我们公司,我们决定构建一个带有 Angular 前端应用程序的 ASP 核心。我们希望将其发布给我们的集成商,但他们可能希望在我们的应用程序中添加特定的开发,以满足客户的特定需求。他们怎么可能将代码添加到我们的应用程序中?在前端部分(角度)以及后端部分(ASP 核心)知道我们会给他们一个编译的应用程序。我们不希望他们访问源代码...

就像 odoo 一样,你可以给它添加插件。我们想做类似的事情。你们知道如何在 ASP core + Angular 7 中实现吗?

提前致谢, 期待您的建议

A.穆莱

【问题讨论】:

    标签: c# angular asp.net-core design-patterns architecture


    【解决方案1】:

    你说你想让他们为它工作而不是给他们源代码的部分,我假设你的意思是你希望他们为前端工作但不能访问后端,如果是的话:

    我们对 React 做了同样的事情,这个概念是你的 Angular 应用程序在 \ClientApp 文件夹中的席位 您可以将文件夹移动到新文件夹并启动 git init 将其推送到 github 或任何 git 存储库,然后将其添加为

    dotnet new angular -o my-new-app
    cd my-new-app\ClientApp
    
    git init .
    git add .
    git commit "initial commit"
    git remote add origin https://GITURL
    git push -u origin master
    
    cd ..
    rm -rf ClientApp
    
    git init .
    git add .
    git commit -m "Initial project commit"
    
    git submodule add https://GITURL ClientApp
    

    然后你就可以像往常一样启动项目了。

    现在,如果您想让他们访问后端,您可以编译 DLL 代码并将它们放在 Angular 代码旁边的 build 文件夹中。

    您还可以将您的后端项目上传到临时服务器,他们可以在其中向CORS 发出请求并启用http://localhost:5000,他们将在本地运行 Angular 以便能够向https://staging-url.com 发出请求

    添加 CORS:

    services.AddCors(options =>
                {
                    options.AddPolicy(AllowedOriginPolicy,
                    builder =>
                    {
                        builder.WithOrigins(
                            "http://localhost:5000"
                        )
                        .AllowAnyHeader()
                        .AllowAnyMethod()
                        ;
                    });
                });
    

    希望对你有帮助 干杯

    【讨论】:

      猜你喜欢
      • 2014-08-11
      • 2016-07-29
      • 1970-01-01
      • 2018-09-28
      • 1970-01-01
      • 1970-01-01
      • 2017-12-08
      • 2011-05-05
      • 2017-12-29
      相关资源
      最近更新 更多