C# 与现有Asp.Net网站一起使用

C# 与现有Asp.Net网站一起使用,c#,asp.net,angular,webforms,C#,Asp.net,Angular,Webforms,我正在做一个项目,我们已经有了一个使用Asp.Net构建的现有网站。我们计划添加一些新页面,并更新一些现有页面。 我计划用Webpack在Angular 5中开发这些新页面。由于预算限制,我们无法将整个网站转换为Angular,但最终目标是在Angular 5中完全转换 最近有人开发过这样的混合应用程序吗? 有没有人能解释一下,它是否可行,以及是否因为混淆了这些技术而对性能产生了影响。是的,我在类似的情况下工作,这是绝对可能的。NET页面(MVC?)可以返回一个角度SPA,并从该点开始控制UI流

我正在做一个项目,我们已经有了一个使用Asp.Net构建的现有网站。我们计划添加一些新页面,并更新一些现有页面。 我计划用Webpack在Angular 5中开发这些新页面。由于预算限制,我们无法将整个网站转换为Angular,但最终目标是在Angular 5中完全转换

最近有人开发过这样的混合应用程序吗?

有没有人能解释一下,它是否可行,以及是否因为混淆了这些技术而对性能产生了影响。

是的,我在类似的情况下工作,这是绝对可能的。NET页面(MVC?)可以返回一个角度SPA,并从该点开始控制UI流

假设您想在Angular中创建一个“用户配置文件”页面。当用户在标准MVC站点中导航到该页面时,它应该返回加载了Angular应用程序的页面(作为javascript脚本引用)。从此以后,Angular应用程序可以处理进一步的重定向和逻辑


它确实使一些事情变得复杂,但一次性移植通常是不可行的。这种方法使我们能够移动到角度,一次一页

我们一家大公司就是这样做的。这很简单。使用angular cli创建新项目

ng新建我的项目

并将内容复制到现有ASP.NET解决方案的根目录中。您现在需要使用

ng构建——观察

而不是

ng发球


然后将脚本include从
/dist/index.html
复制到您的aspx或cshtml文件中。

谢谢@Carlos Rodriguez。我甚至计划用完全相同的方法,即“一次一页”。就我而言,它是一个网站,而不是MVC。两件事-1)您是否遇到过与此方法相关的性能问题??2) 您是否创建了任何plunkr,或者是否有一篇好文章,我可以参考??如果您不小心,在Angular中所有客户端“乐趣”都可能存在与性能相关的问题。Javascript更改检测可能变得非常昂贵。但总的来说,不,我不会说我有任何性能问题。不幸的是,我没有设置任何plunkr,因为我没有这个代码库。如果你使用Webforms(.aspx),那么你肯定也需要设置一个单独的Web API项目,让你的Angular应用程序与后端通信。您的Web API和.aspx后端文件可以共享相同的业务逻辑。你的.aspx页面应该链接到Angular html文件来集成它们。我明白你的意思。实际上,放置一个webapi层是非常好的,aspx和angular页面都可以使用它们。最后一个问题,当你们开始做这件事的时候,你们有没有参考一些帮助你们的文献?如果是的话,那么我也要看一下那些文件。谢谢卡洛斯·罗德里格斯:谢谢。我正在做POC。我会很快在这里发布结果。我按照你的建议尝试了,但是我发现了下面的错误。如果我删除所有的角度代码,它就可以正常工作。你有没有遇到过这样的问题。我确实创建了虚拟目录,但我无法构建此项目<代码>在应用程序级别之外使用注册为allowDefinition='MachineToApplication'的节是错误的。此错误可能是由于未将虚拟目录配置为IIS中的应用程序而导致的。仅澄清一下,此错误是因为node_模块目录中的某些包具有“web.config”文件。我无法删除此文件夹,其他内容将无法生成。有什么想法吗?我想出来了。刚刚隐藏了“node_modules”文件夹,一切正常。嗨@Akash,你对迁移有什么反馈吗?