dbLinq XMlMappingSource.cs には次のコードが含まれています。
public void ReadEmptyContent(XmlReader r, string name)
{
if (r.IsEmptyElement)
r.ReadStartElement(name, DbmlNamespace);
else
{
r.ReadStartElement(name, DbmlNamespace);
for (r.MoveToContent(); r.NodeType != XmlNodeType.EndElement; r.MoveToContent())
{
if (r.NamespaceURI != DbmlNamespace)
r.Skip();
throw UnexpectedItemError(r);
}
r.ReadEndElement();
}
}
これにより、コンパイル警告が発生します
警告 CS0162 到達不能コードが検出されました
行で
for (r.MoveToContent(); r.NodeType != XmlNodeType.EndElement; r.MoveToContent())
for 句の 3 番目の部分r.MoveToContent()
通常のノード トラバーサル コードのように見え、for の 3 番目の部分に到達します。
これを修正するには?.NET 4 の使用