Was bedeuten diese Visual Studio -Warnungen?
-
29-09-2019 - |
Frage
Meine Web.config -Transformationen werden nicht veröffentlicht - und ich denke, der Fehler hat mit diesen Warnungen zu tun, die ich bekomme.
Mit Visual Studio 2010 spiele ich mit meinem herum Web.Config
/ Web.Config.Debug
Dateien.
In meinem .Debug
Datei, ich erhalte die folgende Warnung, die mehrfach aufgeführt ist.
No element in the source document matches '/configuration'
Ich denke, es listet es für jeden auf Sektion das existiert in der .Debug
Datei.
Also mit der folgenden Beispiel -Datei web.config.debug. Dies wird zweimal aufgeführt. (Ich vermute, der erste ist für <connectionStrings>..</>
und der zweite ist für <system.webServer>...</.>
)
<?xml version="1.0"?>
<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform" xdt:SupressWarnings="false">
<connectionStrings>
<add name="Foo" connectionString="Server=foo;Database=Foo;uid=foo;password=foo" providerName="System.Data.SqlClient"
xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
</connectionStrings>
<system.webServer>
<httpProtocol>
<customHeaders>
<clear />
<add name="ETag" value="Dev_IIS" xdt:Transform="SetAttributes" xdt:Locator="Match(name)" />
</customHeaders>
</httpProtocol>
</system.webServer>
</configuration>
Kann bitte jemand helfen?
Lösung
ich fand Dieser Blog -Beitrag Dies legt nahe, dass der Transformator auf XMLNS = Attributen erstickt.
Ich habe meine Web.config -Datei aus dieser geändert:
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
<connectionStrings>
etc...
dazu:
<configuration>
<connectionStrings>
etc...
... und siehe da, es funktioniert!
Andere Tipps
Ich habe ein neues Web -Anwendungsprojekt (Targeting .NET 4.0) erstellt und das web.release.config geändert, um genau das zu enthalten, was Sie oben eingefügt haben. Ich ging dann zu Web.config und fügte Folgendes hinzu:
<add name="ApplicationServices"
connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true"
providerName="System.Data.SqlClient" />
<add name="Foo" /> <------------------------added this
</connectionStrings>
Ich habe dann die Konfiguration in die Veröffentlichung geändert und die Webanwendung veröffentlicht. Die veröffentlichte Anwendung enthielt Folgendes in Web.config
<add name="ApplicationServices"
connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true"
providerName="System.Data.SqlClient" />
<add name="Foo"
connectionString="Server=foo;Database=Foo;uid=foo;password=foo"
providerName="System.Data.SqlClient" /> <-------this got added
Ich bin mir also nicht sicher, wo sich das Problem in Ihrem Fall befindet.