【问题标题】:Code OnTime ASP.Net code generatorCode OnTime ASP.Net 代码生成器
【发布时间】:2011-04-17 23:06:47
【问题描述】:

有人在真实世界的项目 (codeontime.com) 上测试过 Code OnTime 吗?技术看起来很有希望,但他们的免费版本限制太严格了。我设法在模型中只放了几张表,真正的数据库有 20 多个表。此外,还不清楚生成的站点如何在数据库包含大量记录的情况下工作。令我惊讶的是,我没有找到任何关于这个主题的评论或博客文章。我考虑购买许可证,但我有疑问。

如果不是 Code OnTime,还有其他像样的代码生成器吗?我只需要数据库前端和简单的安全性。

谢谢, 亚历克斯

【问题讨论】:

    标签: asp.net code-generation


    【解决方案1】:

    神圣的流行语蝙蝠侠。那个网站对我来说有点吓人。我无法谈论它生成的代码,但是如果您正在为一些数据库表寻找一个不错的前端,ASP.NET Dynamic Data 会浮现在脑海中。出于某种原因,它不是 ASP.NET 更知名的功能之一,但它确实应该是。网上有很多教程,它可能会做你想做的一切。

    【讨论】:

    • 不幸的是动态数据不是一个选项。这是我的第一次尝试。与任何新的 Microsoft 技术一样,它仅在演示视频上看起来很有吸引力。当你试图朝着另一个方向迈出一步时,它完全失败了。你最终定制了
    • 每一个页面,做所有的编码,那里没有脚手架支持。所以这是个好主意和不错的尝试,但这项技术还没有准备好生产,这是极客的乐趣。
    • 我怀疑你花了很多时间在它上面。太糟糕了。
    • 也许是的。我花了足够的时间来估计编码时间。如果您需要为每个表格定制模板,您可以从 DD 获得哪些支持?为每个表格制作单独的模板有什么意义?没有其他的定制方式。
    【解决方案2】:

    我现在已经在许多不同的项目中使用了 CodeOnTime,并且在访问数据时性能似乎非常好。我同意 MRM 所说的 - 您的数据库设计对于生成良好的 CodeOnTime 输出至关重要。然后,根据您的需要,您可以使用 C# 或 VB.NET 在生成的代码之上添加自己的自定义业务逻辑。此外,它还与 ASP.NET Membership 很好地集成,并生成与维护您的应用的用户和角色相关的相关管理/安全页面。

    【讨论】:

      【解决方案3】:

      我想推荐我的代码生成器http://code.google.com/p/magicapps/,它是一个开源项目,可以从任何类型的数据库生成 asp.net 和 winform 的代码。我喜欢我的项目的另一个功能是可以创建 sn-ps 而不仅仅是项目,因此您可以根据需要创建 sn-ps。最好的,是免费的。

      【讨论】:

        【解决方案4】:

        此工具是基于数据库结构的,要获得您需要的高效数据库设计。要应用复杂的业务规则,您需要在 SQL or C# 上进行编程。 CodeOntime 生成的代码很简单,并且具有良好的架构。我已经测试了浏览几十万条记录表,它做得非常好。它确实节省了前期编程的时间,但在我看来,您需要成为一名优秀的程序员才能充分利用 CodeOnTime。

        【讨论】:

          【解决方案5】:

          我知道这是一个老问题,但我忍不住加了两分钱关于 CodeOnTime。在查看它时,我们发现至少三个问题从我的角度排除了它:

          • 它希望在本地 XML 日志文件中记录所有设计更改以便将来“重放”它们的方式不利于使用源代码控制进行协作开发。我们在这个日志文件上经常会在两个开发人员之间发生冲突,因此我们实际上将任务拆分并将 CoT 开发分配给一个人以避免冲突。我最后一次听说,他们正在考虑编写某种服务器工具来管理多个同时开发人员更改的合并。对我来说,这听起来注定要失败。

          • 它具有“Url Hashing”机制,可防止人们通过使用私钥加密来篡改 Url。但是,它也向客户端公开了 Url 编码功能。所以,如果我想篡改一个Url,我只需创建一个任意Url,然后自己调用编码函数来获取编码版本。然后我(或毫无戒心的受害者)可以请求编码的 Url,服务器将对其进行解码,就好像它是它生成的一样,然后使用我的任意 Url。更糟糕的是,私钥有默认值,用户无需更改!

          • 在监视客户端和服务器之间发送的一些 AJAX 流量后,我发现创建一个 POST 请求以从服务器取回数据(包括生成的网站的用户目录)非常简单 - 无需身份验证!我在 2012 年 11 月向他们报告了这个问题,我刚刚测试了他们的“Northwind in the Cloud - Windows Azure Demo”站点中仍然存在该漏洞。

          如果您正在考虑使用 CodeOnTime,我只会在您计划一个开发人员和少数内部网络上的用户的情况下这样做。任何比这更大的事情,我都会等待他们认真对待安全性。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2011-08-04
            • 1970-01-01
            • 1970-01-01
            • 2018-06-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多