Sorunu şu şekilde yorumluyorum: DotNetConfig.xsd
dosyasının <startup>
öğesinin tanımı yanlış ya da eksik. Tüm DotNetConfig.xsd
, DotNetConfig35.xsd
, DotNetConfig30.xsd
ve DotNetConfig20.xsd
dosyaların hat 230 Diğer taraftan
<xs:element name="startup" vs:help="configuration/startup" />
Microsoft startup settings schema olarak boş değil elemanı tarif içeriyor. Yani Visual Studio 2010 böyle modifikasyonu ve cihazın yeniden sonra aşağıdaki satırları
<xs:element name="startup" vs:help="configuration/startup">
<xs:complexType>
<xs:choice minOccurs="1" maxOccurs="1">
<xs:element name="requiredRuntime" vs:help="configuration/startup/requiredRuntime">
<xs:complexType>
<xs:attribute name="version" type="xs:string" use="optional" />
<xs:attribute name="safemode" type="xs:boolean" use="optional" />
</xs:complexType>
</xs:element>
<xs:element name="supportedRuntime" minOccurs="1" maxOccurs="unbounded" vs:help="configuration/startup/supportedRuntime">
<xs:complexType>
<xs:attribute name="version" type="xs:string" use="optional" />
<xs:attribute name="sku" type="xs:string" use="optional" />
</xs:complexType>
</xs:element>
</xs:choice>
<xs:attribute name="useLegacyV2RuntimeActivationPolicy" type="xs:boolean" use="optional" />
<!-- see http://msdn.microsoft.com/en-us/library/bbx34a2h.aspx -->
</xs:complexType>
</xs:element>
için DotNetConfig.xsd
ve %ProgramFiles%\Microsoft Visual Studio 10.0\Xml\Schemas
dizine (veya 64 bit sistemlerde %ProgramFiles(x86)%\Microsoft Visual Studio 10.0\Xml\Schemas
dizinden) tüm DotNetConfigXX.xsd
dosyalarında yukarıdaki çizgiyi yerine önermek sen Açıkladığınız uyarılara sahip olmayacak. Sebep, tüm niteliklerin veya öğelerin şemasını daha ayrıntılı olarak tanımlayabilir (özellikle <startup>
bölümünün daha ayrıntılı belgelerini bulursak), ancak sorunun nedenini ve düzeltmenin bir yolunu açıklamak istiyorum. DotNetConfig.xsd
, DotNetConfig35.xsd
ve diğer DotNetConfigXX.xsd
dosyaları arasında seçim şema here açıklanan aynı dizinden catalog.xml
dosyanın ihtiva dayalı yapılacaktır arada
. catalog.xml
dosyasının standart sürümü aşağıdaki satırları
<Association extension="config" schema="%InstallRoot%/xml/schemas/dotNetConfig20.xsd" condition="starts-with($TargetFrameworkMoniker, '.NETFramework,Version=v2.')" />
<Association extension="config" schema="%InstallRoot%/xml/schemas/dotNetConfig30.xsd" condition="starts-with($TargetFrameworkMoniker, '.NETFramework,Version=v3.0')" />
<Association extension="config" schema="%InstallRoot%/xml/schemas/dotNetConfig35.xsd" condition="starts-with($TargetFrameworkMoniker, '.NETFramework,Version=v3.5')" />
<Association extension="config" schema="%InstallRoot%/xml/schemas/dotNetConfig.xsd" condition="starts-with($TargetFrameworkMoniker, '.NETFramework,Version=v4.') or $TargetFrameworkMoniker = ''" />
içeren Yani yukarıdaki dosyalardan biri tarafından açıklanan XSD şeması ile dosyaları gibi Visual Studio tarafından yorumlayıp olacak
.config
uzantıya sahip tüm dosyaları.
Teşekkürler. Bu hile yaptı. Xsd'nin VS ile gönderilmesinin yanlış olabileceği ihtimalini bile düşünmedim. –
@Sebastian P.R. Gingter: Rica ederim! Kimse mükemmel değildir. Microsoft da. Tüm .config dosyaları (app.config, web.config ve benzeri) için bir XSD'ye sahip olmak iyi bir fikir değildir. Yani yapılandırma şeması ile başka yakın sorunlar var. Yine de size yardım ettiğimi duyduğuma sevindim. Mach'un bağırsağı! – Oleg
Ayrıca benim için 41 uyarıdan kurtuldum. Çok teşekkürler :) –