2017-05-06 10 views
0

私は奇妙な問題があります.MVCアプリケーションのWebデプロイメント後にweb.configに新しい接続文字列が追加されているファイル。MVCアプリケーションのweb.configに「DefaultConnection」接続文字列を追加する方法

<add name="DefaultConnection" connectionString="DefaultConnection_ConnectionString" providerName="System.Data.SqlClient" />

は、私が何かが自動的に追加されます、それはから来ている見当がつかない。監査モジュールは、ここで

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <configSections> 
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" /> 
    <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" /> 
</configSections> 
    <connectionStrings> 
    <add name="AuditDbContext" connectionString="[An Azure connection string]" providerName="System.Data.SqlClient" /> 
     <add name="DefaultConnection" connectionString="DefaultConnection_ConnectionString" providerName="System.Data.SqlClient" /> 
    </connectionStrings> 
    <appSettings> 
    <add key="webpages:Version" value="3.0.0.0" /> 
    <add key="webpages:Enabled" value="false" /> 
    <add key="ClientValidationEnabled" value="true" /> 
    <add key="UnobtrusiveJavaScriptEnabled" value="true" /> 
    <add key="AuditingLevelModifier" value="0" /> 
    <add key="AuditingMode" value="DatabaseAndLogger" /> 
    <add key="IgnoreSslPolicyErrors" value="true" /> 
    </appSettings> 
    <system.web> 
    <compilation targetFramework="4.6" /> 
    <httpRuntime targetFramework="4.5.2" maxRequestLength="512000" /> 
    <httpCookies httpOnlyCookies="true" requireSSL="true" lockItem="true" /> 
    <httpModules> 
     <add name="ApplicationInsightsWebTracking" type="Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web" /> 
    </httpModules> 
    <customErrors mode="Off" /> 
    </system.web> 
    <system.webServer> 
    <httpProtocol> 
     <customHeaders> 
     <add name="Strict-Transport-Security" value="max-age=16070400; includeSubDomains" /> 
     </customHeaders> 
    </httpProtocol> 
    <security> 
     <requestFiltering> 
     <requestLimits maxAllowedContentLength="314572800" /> 
     </requestFiltering> 
    </security> 
    <modules> 
     <remove name="ApplicationInsightsWebTracking" /> 
     <add name="ApplicationInsightsWebTracking" type="Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web" preCondition="managedHandler" /> 
    </modules> 
    <validation validateIntegratedModeConfiguration="false" /> 
    <handlers> 
     <remove name="ExtensionlessUrlHandler-Integrated-4.0" /> 
     <remove name="OPTIONSVerbHandler" /> 
     <remove name="TRACEVerbHandler" /> 
     <add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" /> 
    </handlers> 
    </system.webServer> 
    <runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <dependentAssembly> 
     <assemblyIdentity name="Microsoft.Owin.Security" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="Microsoft.Owin.Security.OAuth" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="Microsoft.Owin.Security.Cookies" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="Microsoft.Owin" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="0.0.0.0-3.0.1.0" newVersion="3.0.1.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="Newtonsoft.Json" culture="neutral" publicKeyToken="30ad4fe6b2a6aeed" /> 
     <bindingRedirect oldVersion="0.0.0.0-10.0.0.0" newVersion="10.0.0.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="System.Web.Optimization" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="1.1.0.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="0.0.0.0-1.5.2.14234" newVersion="1.5.2.14234" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="Antlr3.Runtime" publicKeyToken="eb42632606e9261f" culture="neutral" /> 
     <bindingRedirect oldVersion="0.0.0.0-3.5.0.2" newVersion="3.5.0.2" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" /> 
     <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" /> 
     <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" /> 
     <bindingRedirect oldVersion="1.0.0.0-5.2.3.0" newVersion="5.2.3.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="Microsoft.IdentityModel.Tokens" publicKeyToken="31bf3856ad364e35" culture="neutral" /> 
     <bindingRedirect oldVersion="0.0.0.0-5.1.2.0" newVersion="5.1.2.0" /> 
     </dependentAssembly> 
     <dependentAssembly> 
     <assemblyIdentity name="Microsoft.IdentityModel.Logging" publicKeyToken="31bf3856ad364e35" culture="neutral" /> 
     <bindingRedirect oldVersion="0.0.0.0-1.1.3.0" newVersion="1.1.3.0" /> 
     </dependentAssembly> 
    </assemblyBinding> 
    </runtime> 
    <entityFramework> 
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" /> 
    <providers> 
     <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" /> 
    </providers> 
    </entityFramework> 

    <system.codedom> 
    <compilers> 
     <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:6 /nowarn:1659;1699;1701" /> 
     <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:14 /nowarn:41008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+" /> 
    </compilers> 
    </system.codedom> 
    <log4net> 
    <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender"> 
     <file value="C:\Logs\Portal.log" /> 
     <encoding value="utf-8" /> 
     <appendToFile value="true" /> 
     <rollingStyle value="Date" /> 
     <datePattern value="dd.MM.yyyy'.log'" /> 
     <layout type="log4net.Layout.PatternLayout"> 
     <conversionPattern value="%date %level [%thread] %type.%method - %message%n" /> 
     </layout> 
    </appender> 
    <appender name="AuditTrailAppender" type="log4net.Appender.RollingFileAppender"> 
     <file value="C:\Logs\AuditTrail.log" /> 
     <encoding value="utf-8" /> 
     <appendToFile value="true" /> 
     <rollingStyle value="Date" /> 
     <datePattern value="dd.MM.yyyy'.log'" /> 

     <layout type="log4net.Layout.PatternLayout"> 
     <conversionPattern value="%date %level [%thread] %type.%method - %message%n" /> 
     </layout> 
    </appender> 
    <appender name="TraceAppender" type="log4net.Appender.TraceAppender"> 
     <layout type="log4net.Layout.PatternLayout"> 
     <conversionPattern value="%date %level [%thread] %type.%method - %message%n" /> 
     </layout> 
    </appender> 
    <logger name="AuditTrailLogger" additivity="false"> 
     <level value="ALL" /> 
     <appender-ref ref="AuditTrailAppender" /> 
    </logger> 
    <root> 
     <level value="Debug" /> 
     <!-- If the following line is not included the log file 
     will not be created even if log4net is configured with this file. --> 
     <appender-ref ref="RollingFileAppender" /> 
     <appender-ref ref="TraceAppender" /> 
    </root> 
    </log4net> 
</configuration> 

私は、接続文字列を使用してこのWebアプリの成分のみと信じて公開した後、私のweb.configファイルである - EFは、別の接続文字列を使用するように設定されている(そしてそれが動作します) public AuditingContext() : base("name=AuditDbContext")

私は本当にどこから来ているのか困惑しています。特に、昨夜はこの接続文字列に関連した奇妙なエラーがありました。 は基本的に、私は初期化文字列の

フォーマットは、インデックスアプリケーションの起動時に0

から始まる仕様 に準拠していない、このエラーを取得し始めたとき、それが追加されることに気づいた - とするとき、私は削除しましたDefaultConnection、エラーが 'SQL Serverへの接続を確立中にネットワーク関連またはインスタンス固有のエラーが発生しました'に変更されました。

とにかく - どこから来たのですか?

乾杯!

+0

プロダクションにどのように導入しますか? –

+0

@MajidParvin - MSDeploy Web公開メソッドを使用します。 – Bartosz

答えて

0

私はそれを理解しました。

私のpubxmlプロファイルが追加しました - これらの行を見てください。

<ItemGroup> 
    <MSDeployParameterValue Include="$(DeployParameterPrefix)AuditDbContext-Web.config Connection String" /> 
    <MSDeployParameterValue Include="$(DeployParameterPrefix)DefaultConnection-Web.config Connection String"> 
     <UpdateDestWebConfig>False</UpdateDestWebConfig> 
    </MSDeployParameterValue> 
    </ItemGroup> 
    <ItemGroup> 
    <_ConnectionStringsToInsert Include="DefaultConnection" /> 
    </ItemGroup> 

許可に関連するデフォルトコードのために追加されているとします。より多くの質問(why does it sometimes work!?)に私をリードし、それがこの質問の範囲外であるIdentityModelクラス

スタートアップ

app.CreatePerOwinContext(ApplicationDbContext.Create);

関連する問題