• EF 多数据库切换配置(MSSQL/MySql)


     1 <?xml version="1.0" encoding="utf-8"?>
     2 <!--
     3   有关如何配置 ASP.NET 应用程序的详细信息,请访问
     4   https://go.microsoft.com/fwlink/?LinkId=301880
     5   -->
     6 <configuration>
     7   <configSections>
     8     <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
     9     <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    10   </configSections>
    11   <connectionStrings>
    12     <add name="DataModel" providerName="MySql.Data.MySqlClient" connectionString="Data Source=localhost;Initial Catalog=Demo;User ID=root;Password=123456" />
    13     <!--<add name="DataModel" connectionString="data source=.;initial catalog=Demo;persist security info=True;user id=sa;password=123456;multipleactiveresultsets=True;application name=EntityFramework" providerName="System.Data.SqlClient" />-->
    14   </connectionStrings>
    15   <appSettings>
    16     <add key="webpages:Version" value="3.0.0.0" />
    17     <add key="webpages:Enabled" value="false" />
    18     <add key="ClientValidationEnabled" value="true" />
    19     <add key="UnobtrusiveJavaScriptEnabled" value="true" />
    20   </appSettings>
    21   <system.web>
    22     <compilation debug="true" targetFramework="4.7.2" />
    23     <httpRuntime targetFramework="4.7.2" />
    24   </system.web>
    25   <runtime>
    26     <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
    27       <dependentAssembly>
    28         <assemblyIdentity name="Antlr3.Runtime" publicKeyToken="eb42632606e9261f" />
    29         <bindingRedirect oldVersion="0.0.0.0-3.5.0.2" newVersion="3.5.0.2" />
    30       </dependentAssembly>
    31       <dependentAssembly>
    32         <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" />
    33         <bindingRedirect oldVersion="0.0.0.0-11.0.0.0" newVersion="11.0.0.0" />
    34       </dependentAssembly>
    35       <dependentAssembly>
    36         <assemblyIdentity name="System.Web.Optimization" publicKeyToken="31bf3856ad364e35" />
    37         <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="1.1.0.0" />
    38       </dependentAssembly>
    39       <dependentAssembly>
    40         <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" />
    41         <bindingRedirect oldVersion="0.0.0.0-1.6.5135.21930" newVersion="1.6.5135.21930" />
    42       </dependentAssembly>
    43       <dependentAssembly>
    44         <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" />
    45         <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
    46       </dependentAssembly>
    47       <dependentAssembly>
    48         <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" />
    49         <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
    50       </dependentAssembly>
    51       <dependentAssembly>
    52         <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
    53         <bindingRedirect oldVersion="1.0.0.0-5.2.7.0" newVersion="5.2.7.0" />
    54       </dependentAssembly>
    55     </assemblyBinding>
    56   </runtime>
    57   <system.codedom>
    58     <compilers>
    59       <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:1659;1699;1701" />
    60       <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:41008 /define:_MYTYPE=&quot;Web&quot; /optionInfer+" />
    61     </compilers>
    62   </system.codedom>
    63 
    64 
    65   <entityFramework>
    66     <!--MySQL启用下面一段配置项-->
    67     <!--<defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6">
    68       <parameters>
    69         <parameter value="v11.0" />
    70       </parameters>
    71     </defaultConnectionFactory>-->
    72     <!--SQL SERVER 启用下面一行-->
    73     <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework" >
    74       <parameters>
    75         <parameter value="mssqllocaldb" />
    76       </parameters>
    77     </defaultConnectionFactory>
    78     <providers>
    79       <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
    80       <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.10.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d">
    81       </provider>
    82     </providers>
    83   </entityFramework>
    84 
    85   <system.data>
    86     <DbProviderFactories>
    87       <remove invariant="MySql.Data.MySqlClient" />
    88       <add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.10.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
    89     </DbProviderFactories>
    90   </system.data>
    91 
    92 </configuration>

    DBContext配置:

    this.SetSqlGenerator("MySql.Data.MySqlClient", new MySql.Data.Entity.MySqlMigrationSqlGenerator());

    或者

    DBContext.cs

    [DbConfigurationType(typeof(MySql.Data.Entity.MySqlEFConfiguration))]

  • 相关阅读:
    JS常用自定义方法
    mybatis like用法
    设计模式之前之UML
    DSU模板(树的启发式合并)
    【hihocoder编程练习赛9】闰秒
    静态链接与动态链接的区别【转】
    pragma指令详解(转载)
    Crawl(2)
    Crawl(1)
    Treap
  • 原文地址:https://www.cnblogs.com/xuguoming/p/11490432.html
Copyright © 2020-2023  润新知