【问题标题】:WCF: Best way to get data from Oracle 10g, MySQL and SQL Server 2008 databases?WCF:从 Oracle 10g、MySQL 和 SQL Server 2008 数据库获取数据的最佳方式?
【发布时间】:2011-04-23 04:06:16
【问题描述】:

我正在使用 ASP.NET 4.0 设计一个简单的 C# WCF 服务并托管在 IIS7 上,.NET 和 Java Web 应用程序和桌面应用程序将使用该服务来提取存储在各种数据库(本地和远程)中的数据。在 VS2005 和 asp.net Web 服务上工作了几年后,我开始学习如何使用 VS2010 和 WCF,所以对 WCF 有点陌生,但对 Web 服务和 Visual Studio 有所了解。

是否有人对 Visual Studio 2010 中的项目/类/文件设置的最佳方法有意见,看看我希望如何最大限度地重复使用代码并最大限度地减少开发时间,但仍然有连接到不同数据库的能力?我有一个用于该服务的 WCF 服务应用程序项目,并生成了一个 WCF 客户端用于使用 svcutil.exe 进行测试,但现在我需要开始编写数据库访问层代码(或“模型”代码)对于 MVC,如果这是我需要走的设计路线)。

任何帮助表示赞赏,谢谢!

【问题讨论】:

    标签: mysql wcf visual-studio-2010 sql-server-2008 oracle10g


    【解决方案1】:

    每个数据库在集成时都会遇到一些麻烦。
    您需要开始的第一件事是以更多的 OO(面向对象)方式而不是关系 DB 方式来设计您的模型。
    一旦创建了这样的模型,您需要实现映射器层/类将数据从关系形式映射到 OO 格式。
    然后,您需要为每个 DB 编写一些数据访问代码。您为数据访问编写的代码量很可能取决于您使用的工具\技术。您可以查看实体框架或 NHibernate 或其他此类 ORM 以减少访问数据所需的代码。
    但请记住,这些 ORM 映射器可能需要自己的一组调整才能与 MySQL、Oracle、SQL Server 良好配合。

    【讨论】:

    • 感谢您的帮助!我从您的回答中找到了 ADO.NET Entity Framework,并将研究如何使用它。
    • Entity Framework 和 Linq 为我节省了大量时间,再次感谢您的建议。我发现使用Microsoft Entity Framework Quickstart tutorial 确实很有帮助,并且会推荐给其他人。
    猜你喜欢
    • 1970-01-01
    • 2010-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-04
    • 1970-01-01
    相关资源
    最近更新 更多