ASP.NET Enterprise(ish)应用程序的一般结构

时间:2013-07-30 22:01:41

标签: asp.net wcf wif enterprise

我是一个相当复杂但陈旧的ASP.NET应用程序的监护人。它本质上是一个平台,可以更轻松地创建数据库应用程序 - 使用工具读取数据库模式,自动生成表单,报表,图表,并提供非常广泛的工具来操作UI中的这些内容。有一些非常大的客户使用该平台进行一些小众应用程序,尽管代码的年代很大(有些代码早在2001年就写过),但一切运行良好。

该公司做得很好,我需要开始考虑一个新版本,而不是抹上一些新功能,我想考虑一个新的开始。目前的解决方案是一个荒谬的150个项目 - 从我第一次开始全职工作时的约220个项目开始。

是否有人对企业(ish)级应用程序的一般结构有任何提示或建议?我应该考虑哪些新技术?也许我应该审查一些特定的书籍或网站?

我已经很好地处理了使我们的平台变得如此灵活的所有细节 - 但是因为我已经被锁定了代码的一般结构这么长时间,我觉得我已经脱离了触摸整个事物需要如何大规模地构建。当前的应用程序仍然有一堆.NET Remoting用于与数据库进行通信(只是一点点过时),以及大量非常低效的代码,这些代码是由一个不是真正的程序员的人编写的。

WCF从数据访问层提供信息? WIF进行身份验证?我真的希望能够组装一个API,我的业务合作伙伴可以使用它来连接数据并使用我已设置的大量常用函数 - 理想情况下,API可以在Web上下文中运行其他环境。

我知道这是一个非常重要的问题,可能会有很多可能的答案 - 只是想知道在哪里真正花费我们的研究时间。

谢谢!

-RP

1 个答案:

答案 0 :(得分:2)

如果您想摆脱所有身份验证/授权麻烦,绝对可以选择基于声明的应用程序,WIF,ADFS等。

这是微软的方向 - CMS,SP。 Office 365.Windows Azure AD等现在都是基于声明的。

唯一的问题是ADFS针对AD进行身份验证。有关DB相关的内容,请查看Identity Server

Plus ADFS通过ACS提供Facebook,Google等登录。