我有大约4年的ASP.NET和Server的经验(仅web表单)。我对Rails有一点了解,并且在我的工作中用ASP.NET MVC开发了一个非常小的2-3页的应用程序。现在我和我的一个朋友(和我一样的经历)愿意获得更多的ASP.NET MVC经验。为此,我们考虑在ASP.NET MVC中开发一个开源应用程序。它可以是一个博客系统或论坛或其他任何东西,这样社区也可以从中受益。但是我们无法确定MySQL和Server之间应用程序的后端数据库。你在以下方面有什么建议-
提前谢谢。
发布于 2009-10-18 15:49:47
哪一个会得到社会更多的支持或要求?
对于大多数业务用户和大多数专用ASP宿主提供程序,它将是Microsoft SQL Server IMHO。在版本号上有着惊人的传播。我看到了相当多的Server 2008,很多2005年,也有相当多的2000。
“我们很便宜,是免费的吗?”无论是企业还是个人,我也在Windows上看到一些MySQL。我想,在我曾经合作过的公司圈子里,你提到的两个数据库的2/3 MSSQL和1/3 MySQL。
如果我们使用MySQL,这将是一条艰难的道路吗?
在更困难的发展方面?是和不是;LINQ或多或少只适用于MSSQL,许多人认为它是一种简单而自然的技术。因此,如果您的计划是使用LINQ作为您选择的ORM,则“是”。其他好的ORM(如nHibernate )也能很好地处理这两个数据库,就像elder_george说的。
是否有机会通过使用ORM来支持两者(我没有使用ORM的经验)
当然,f.x。使用nHibernate,并为nHibernate配置提供一些额外的XML,并为用户提供更广泛的安装文档、SQL脚本等等。
还有其他建议吗?
因为这是您的第一个应用程序,所以首先使用mocksups &原型化、UML或其他您选择的东西来处理设计。看看你能不能让一些有经验的MVC开发人员来批评你的设计,但不要把他们的批评当作福音,有不止一种正确的方法。
一定要考虑tvanfosson的建议,即使用IRepository为存储层提供灵活性。
从一开始就考虑使用单元测试和依赖项注入;从长远来看,两者都是非常重要和有用的。不利的一面是,如果你没有这些方面的经验,那将是很多新技术。
发布于 2009-10-18 12:38:08
如果您无法决定使用哪个作为后端,那么我建议它为数据层定义一个接口,对这个接口使用IRepository模式,只需选择一个并编写数据层的实现即可。在一个(成功的)开源项目中,不太可能每个想要使用它的人对数据库的工作方式有相同的想法。在这种情况下,设计它,以便它可以使用任何数据库,给出一个合适的接口实现是一个明智的举措。如果您不介意对其他库具有依赖关系,那么使用像nHibernate这样的工具(已经支持了许多不同的数据库)可能是您想要的路线。
发布于 2009-10-18 12:39:03
https://stackoverflow.com/questions/1584768
复制相似问题