今朝 2.1.401 に更新するまでは、すべて問題ありませんでした。CLI コマンドを使用して、生成された web.config ファイル (.NET Core が生成する) で変換を実行する CI/CD プロセス (Jenkins を使用) があります。ファイルはまさに生成されたものであり、変更はありません。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<location path="." inheritInChildApplications="false">
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="dotnet" arguments=".\MyService.WebApi.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />
</system.webServer>
</location>
</configuration>
サーバー構成のため、検証要素を system.webServer ノードに追加する必要があります。
変換ファイルは次のとおりです。
<?xml version="1.0" encoding="utf-8"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<system.webServer>
<validation validateIntegratedModeConfiguration="false" xdt:Transform="Insert" />
</system.webServer>
</configuration>
かなり前向きなようです。しかし、.NET Core を 2.1.401 に更新してから、次のエラーが発生しました。
[dotnet-xdt] エラー '':4:5: DotNet.Xdt.XmlNodeException: ソース ドキュメントの要素が '/configuration/system.webServer/validation' と一致しません
参考までに、次のコマンドで .NET Core CLI の XDT ツールを使用しています。
dotnet xdt --source .\web.config.full --transform .\web.dev.config --output .\web.config
そのエラーが発生する理由がわかりません。その要素を照合しようとはしていません。要素を挿入しようとしているので、もちろん存在しません...存在することは想定されていません!!!
2.1.301 -> 2.1.401 の破壊的な変更に関しては何も見つけられないようです。これが原因で現在壊れている ~20 個のジョブすべてを修正しようと車輪を回転させています。
洞察、考え、考えられるエラーの指摘、この時点で本当に役立つものは何でもあります!