<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <section name="redisconfig" type="Learun.Cache.Redis.RedisConfigInfo,Learun.Cache.Redis" />
    <section name="unity" type="Microsoft.Practices.Unity.Configuration.UnityConfigurationSection,Microsoft.Practices.Unity.Configuration" />
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
    
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
    <section name="oracle.manageddataaccess.client" type="OracleInternal.Common.ODPMSectionHandler, Oracle.ManagedDataAccess, Version=4.121.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342" />
  </configSections>
  <!--redis-->
  <redisconfig WriteServerList="127.0.0.1:6379" ReadServerList="127.0.0.1:6379" MaxWritePoolSize="60" MaxReadPoolSize="60" AutoStart="true" LocalCacheTime="180" RecordeLog="false"></redisconfig>
  <!--<redisconfig WriteServerList="192.168.0.12:6379" ReadServerList="192.168.0.12:6379" MaxWritePoolSize="60" MaxReadPoolSize="60" AutoStart="true" LocalCacheTime="180" RecordeLog="false"></redisconfig>-->
  <!--IOC-->
  <unity>
    <typeAliases>
      <typeAlias alias="IDatabase" type="Learun.DataBase.IDatabase,Learun.DataBase" />
      <typeAlias alias="SqlServer" type="Learun.DataBase.SqlServer.Database,Learun.DataBase.SqlServer" />
      <typeAlias alias="MySql" type="Learun.DataBase.MySqlEx.Database,Learun.DataBase.MySqlEx" />
      <typeAlias alias="Oracle" type="Learun.DataBase.Oracle.Database,Learun.DataBase.Oracle" />

      <!--工作流接口-->
      <typeAlias alias="INodeMethod" type=" Learun.Application.WorkFlow.INodeMethod, Learun.Application.WorkFlow" />
      <typeAlias alias="NodeMethod" type=" Learun.Application.WorkFlow.NodeMethod, Learun.Application.WorkFlow" />
    </typeAliases>
    <containers>
      <container name="IOCcontainer">
        <type type="IDatabase" mapTo="SqlServer" name="SqlServer"></type>
        <type type="IDatabase" mapTo="MySql" name="MySql"></type>
        <type type="IDatabase" mapTo="Oracle" name="Oracle"></type>
      </container>
      <container name="WfIOCcontainer">
        <type type="INodeMethod" mapTo="NodeMethod"></type>
      </container>
    </containers>
  </unity>
  <!--数据库-->
  <connectionStrings>
    <add name="BaseDb" connectionString="Server=192.168.2.126;Initial Catalog=adms7ultimate2;User ID=sa;Password=bjqj@2015!" providerName="System.Data.SqlClient" />
    <!--<add name="BaseDb" connectionString="Server=192.168.0.12;Initial Catalog=LearunFramework_Base_2017;User ID=sa;Password=SQLserver2Learun.com" providerName="System.Data.SqlClient" />-->
  </connectionStrings>
  <!--系统设置-->
  <appSettings>
    <!-- ================== 1:开发系统相关配置 ================== -->
    <!-- 启用系统日志-->
    <add key="IsLog" value="true" />
    <!-- ================== 2:这里主要是微信配置项内容部分 ================== -->
    <!--企业号CorpId -->
    <add key="CorpId" value="wxa2c39f6194f4" />
    <!--企业号凭证密钥 -->
    <add key="CorpSecret" value="eDo9pEOXWqSgWtQ-_1NF_NTmGDTlZ3UFFdF3To-" />
    <!-- ================== 4:系统软件参数配置 ================== -->
    <!-- 联系我们 -->
    <add key="Contact" value="www.Learun.cn" />
    <!-- 公司名称 -->
    <add key="CustomerCompanyName" value="" />
    <!-- 系统名称 -->
    <add key="SystemName" value="数字化智慧校园" />
    <!-- 软件名称 -->
    <add key="SoftName" value="数字化智慧校园" />
    <!-- 软件版本 -->
    <add key="Version" value="6.1.6.0" />
    <!-- 软件注册码,备用 -->
    <add key="RegisterKey" value="NO:2013101712345678" />
    <!-- ================== 5:外部邮件参数 ================== -->
    <!-- 系统错误自动发送邮件 -->
    <add key="ErrorToMail" value="false" />
    <!-- 接收错误信息的邮箱 -->
    <add key="RereceiveErrorMail" value="" />
    <!-- 发出邮箱的名称 -->
    <add key="MailName" value="" />
    <!-- 发出邮箱的地址 -->
    <add key="MailUserName" value="" />
    <!-- 发出邮箱的密码 -->
    <add key="MailPassword" value="" />
    <!-- 发出邮箱设置邮箱主机 -->
    <add key="MailHost" value="" />
    <!-- ================== 6:即时通信参数 ================== -->
    <add key="IMUrl" value="http://:8012" />
    <!-- ================== 7:工作流引擎地址 ================== -->
    <add key="workflowService" value="http://localhost:8013" />
  </appSettings>
  <!--日志-->
  <log4net>
    <!--根配置-->
    <root>
      <!--日志级别:可选值: ERROR > WARN > INFO > DEBUG -->
      <level value="ERROR" />
      <level value="WARN" />
      <level value="INFO" />
      <level value="DEBUG" />
      <appender-ref ref="ErrorLog" />
      <appender-ref ref="WarnLog" />
      <appender-ref ref="InfoLog" />
      <appender-ref ref="DebugLog" />
    </root>
    <!-- 错误 Error.log-->
    <appender name="ErrorLog" type="log4net.Appender.RollingFileAppender">
      <!--目录路径,可以是相对路径或绝对路径-->
      <param name="File" value="C:\learun_log" />
      <!--文件名,按日期生成文件夹-->
      <param name="DatePattern" value="/yyyy-MM-dd/&quot;Error.log&quot;" />
      <!--追加到文件-->
      <appendToFile value="true" />
      <!--创建日志文件的方式,可选值:Date[日期],文件大小[Size],混合[Composite]-->
      <rollingStyle value="Composite" />
      <!--写到一个文件-->
      <staticLogFileName value="false" />
      <!--单个文件大小。单位:KB|MB|GB-->
      <maximumFileSize value="200MB" />
      <!--最多保留的文件数,设为"-1"则不限-->
      <maxSizeRollBackups value="-1" />
      <!--日志格式-->
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%message" />
      </layout>
      <filter type="log4net.Filter.LevelRangeFilter">
        <param name="LevelMin" value="ERROR" />
        <param name="LevelMax" value="ERROR" />
      </filter>
    </appender>
    <!-- 警告 Warn.log-->
    <appender name="WarnLog" type="log4net.Appender.RollingFileAppender">
      <!--目录路径,可以是相对路径或绝对路径-->
      <param name="File" value="C:\learun_log" />
      <!--文件名,按日期生成文件夹-->
      <param name="DatePattern" value="/yyyy-MM-dd/&quot;Warn.log&quot;" />
      <!--追加到文件-->
      <appendToFile value="true" />
      <!--创建日志文件的方式,可选值:Date[日期],文件大小[Size],混合[Composite]-->
      <rollingStyle value="Composite" />
      <!--写到一个文件-->
      <staticLogFileName value="false" />
      <!--单个文件大小。单位:KB|MB|GB-->
      <maximumFileSize value="200MB" />
      <!--最多保留的文件数,设为"-1"则不限-->
      <maxSizeRollBackups value="-1" />
      <!--日志格式-->
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%message" />
      </layout>
      <filter type="log4net.Filter.LevelRangeFilter">
        <param name="LevelMin" value="WARN" />
        <param name="LevelMax" value="WARN" />
      </filter>
    </appender>
    <!-- 信息 Info.log-->
    <appender name="InfoLog" type="log4net.Appender.RollingFileAppender">
      <!--目录路径,可以是相对路径或绝对路径-->
      <param name="File" value="C:\learun_log" />
      <!--文件名,按日期生成文件夹-->
      <param name="DatePattern" value="/yyyy-MM-dd/&quot;Info.log&quot;" />
      <!--追加到文件-->
      <appendToFile value="true" />
      <!--创建日志文件的方式,可选值:Date[日期],文件大小[Size],混合[Composite]-->
      <rollingStyle value="Composite" />
      <!--写到一个文件-->
      <staticLogFileName value="false" />
      <!--单个文件大小。单位:KB|MB|GB-->
      <maximumFileSize value="200MB" />
      <!--最多保留的文件数,设为"-1"则不限-->
      <maxSizeRollBackups value="-1" />
      <!--日志格式-->
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%message" />
      </layout>
      <filter type="log4net.Filter.LevelRangeFilter">
        <param name="LevelMin" value="INFO" />
        <param name="LevelMax" value="INFO" />
      </filter>
    </appender>
    <!-- 调试 Debug.log-->
    <appender name="DebugLog" type="log4net.Appender.RollingFileAppender">
      <!--目录路径,可以是相对路径或绝对路径-->
      <param name="File" value="C:\learun_log" />
      <!--文件名,按日期生成文件夹-->
      <param name="DatePattern" value="/yyyy-MM-dd/&quot;Debug.log&quot;" />
      <!--追加到文件-->
      <appendToFile value="true" />
      <!--创建日志文件的方式,可选值:Date[日期],文件大小[Size],混合[Composite]-->
      <rollingStyle value="Composite" />
      <!--写到一个文件-->
      <staticLogFileName value="false" />
      <!--单个文件大小。单位:KB|MB|GB-->
      <maximumFileSize value="200MB" />
      <!--最多保留的文件数,设为"-1"则不限-->
      <maxSizeRollBackups value="-1" />
      <!--日志格式-->
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%message" />
      </layout>
      <filter type="log4net.Filter.LevelRangeFilter">
        <param name="LevelMin" value="DEBUG" />
        <param name="LevelMax" value="DEBUG" />
      </filter>
    </appender>
  </log4net>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
  </startup>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Owin" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-3.1.0.0" newVersion="3.1.0.0" />
      </dependentAssembly>
      <dependentAssembly>
        <publisherPolicy apply="no" />
        <assemblyIdentity name="Oracle.ManagedDataAccess" publicKeyToken="89b483f429c47342" culture="neutral" />
        <bindingRedirect oldVersion="4.121.0.0 - 4.65535.65535.65535" newVersion="4.121.2.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0" />
      </dependentAssembly>
      <dependentAssembly>
        <assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.0.6.0" newVersion="4.0.6.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
      <parameters>
        <parameter value="mssqllocaldb" />
      </parameters>
    </defaultConnectionFactory>
    <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
      <provider invariantName="Oracle.ManagedDataAccess.Client" type="Oracle.ManagedDataAccess.EntityFramework.EFOracleProviderServices, Oracle.ManagedDataAccess.EntityFramework, Version=6.121.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342" />
    <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.9.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"></provider></providers>
  </entityFramework>
  <system.data>
    <DbProviderFactories>
      <remove invariant="Oracle.ManagedDataAccess.Client" />
      <add name="ODP.NET, Managed Driver" invariant="Oracle.ManagedDataAccess.Client" description="Oracle Data Provider for .NET, Managed Driver" type="Oracle.ManagedDataAccess.Client.OracleClientFactory, Oracle.ManagedDataAccess, Version=4.121.2.0, Culture=neutral, PublicKeyToken=89b483f429c47342" />
    <remove invariant="MySql.Data.MySqlClient" /><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.9.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" /></DbProviderFactories>
  </system.data>
  <oracle.manageddataaccess.client>
    <version number="*">
      <dataSources>
        <dataSource alias="SampleDataSource" descriptor="(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORCL))) " />
      </dataSources>
    </version>
  </oracle.manageddataaccess.client>
</configuration>