Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 更改连接对代码的影响_Asp.net_Mysql_Sql Server_Oracle_C# 4.0 - Fatal编程技术网

Asp.net 更改连接对代码的影响

Asp.net 更改连接对代码的影响,asp.net,mysql,sql-server,oracle,c#-4.0,Asp.net,Mysql,Sql Server,Oracle,C# 4.0,我正在使用asp.net,目前正在使用SQL SERVER 2008。 在我的代码中,所有DML操作都是在SqlConnection、SqlCommand和SqlDataAdapter的帮助下进行的 但是如果我的数据库移动到ORACLE或MySQL时,我需要为ORACLE编写代码——OLEDBConnection、OLEDBCommand、OLEDBDataAdapter MySQL——需要包含一个MySQL dll 现在由于这个巨大的变化,我需要重新编写整个代码 是否有任何方法可以克服这个问题

我正在使用asp.net,目前正在使用SQL SERVER 2008。 在我的代码中,所有DML操作都是在SqlConnection、SqlCommand和SqlDataAdapter的帮助下进行的

但是如果我的数据库移动到ORACLEMySQL时,我需要为ORACLE编写代码——OLEDBConnection、OLEDBCommand、OLEDBDataAdapter MySQL——需要包含一个MySQL dll

现在由于这个巨大的变化,我需要重新编写整个代码

  • 是否有任何方法可以克服这个问题,即我们立即编写代码,而不依赖于数据库提供程序
  • 图中的实体框架在哪里

  • 请指导我。

    如果您使用基类和中的其他类编写数据访问层,则可以传入并使用任何继承类型

    这意味着您只需编写一次数据访问层,但要注入实际使用的类型,可能需要使用容器


    大多数ORM,包括EF,都使用这种技术来与数据库无关。

    是的,EF进入了第1点。EF会有所帮助,但这在EF出现之前就是一个问题。您要做的是将DB逻辑包装在数据访问层中,只有DAL上的代码依赖于DB提供程序