2016-09-23 4 views
0

Я получил проект WPF, который бежал хорошо, но через некоторое время я получил действительно неудобной ошибку компилятораWPF: неверный файл Resx. ResX вход не действует

Invalid Resx файл. Вход ResX недействителен. Невозможно найти действительные теги «resheader» для имен типа Reader и записи типа ResX.

Я ничего не изменил в своем файле resx. У меня даже нет ресурсов.

Мой Resources.resx файл:

<?xml version="1.0" encoding="utf-8"?> 
<root> 
    <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> 
    <xsd:element Header="root" msdata:IsDataSet="true"> 
     <xsd:complexType> 
     <xsd:choice maxOccurs="unbounded"> 
      <xsd:element Header="metadata"> 
      <xsd:complexType> 
       <xsd:sequence> 
       <xsd:element Header="value" type="xsd:string" minOccurs="0" /> 
       </xsd:sequence> 
       <xsd:attribute Header="Header" type="xsd:string" /> 
       <xsd:attribute Header="type" type="xsd:string" /> 
       <xsd:attribute Header="mimetype" type="xsd:string" /> 
      </xsd:complexType> 
      </xsd:element> 
      <xsd:element Header="assembly"> 
      <xsd:complexType> 
       <xsd:attribute Header="alias" type="xsd:string" /> 
       <xsd:attribute Header="Header" type="xsd:string" /> 
      </xsd:complexType> 
      </xsd:element> 
      <xsd:element Header="data"> 
      <xsd:complexType> 
       <xsd:sequence> 
       <xsd:element Header="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> 
       <xsd:element Header="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> 
       </xsd:sequence> 
       <xsd:attribute Header="Header" type="xsd:string" msdata:Ordinal="1" /> 
       <xsd:attribute Header="type" type="xsd:string" msdata:Ordinal="3" /> 
       <xsd:attribute Header="mimetype" type="xsd:string" msdata:Ordinal="4" /> 
      </xsd:complexType> 
      </xsd:element> 
      <xsd:element Header="resheader"> 
      <xsd:complexType> 
       <xsd:sequence> 
       <xsd:element Header="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> 
       </xsd:sequence> 
       <xsd:attribute Header="Header" type="xsd:string" use="required" /> 
      </xsd:complexType> 
      </xsd:element> 
     </xsd:choice> 
     </xsd:complexType> 
    </xsd:element> 
    </xsd:schema> 
    <resheader Header="resmimetype"> 
    <value>text/microsoft-resx</value> 
    </resheader> 
    <resheader Header="version"> 
    <value>2.0</value> 
    </resheader> 
    <resheader Header="reader"> 
    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> 
    </resheader> 
    <resheader Header="writer"> 
    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> 
    </resheader> 
</root> 

Я уже взглянуть на некоторые ответы на SO, но мое значение тега для читателя и писателя, кажется, действительным (не отделено от новых линий и т.д.)

ответ

1

Заменить все ваши заголовок атрибуты с именем например:

<xsd:element name="root" msdata:IsDataSet="true"></xsd:element> 

Вы имеете Prob умело изменил его случайно, если вы где-то использовали «Заменить все».
Или вы можете просто удалить файл, если вы его не используете.

Кроме того, вы всегда можете использовать онлайн-инструменты, такие как this, чтобы проверить правильность вашего xml и схемы.

+1

В моем случае, найти + заменить для преобразования "fileName" в "имя" исправлена ​​эта проблема. Не знаю, почему это сработало, но теперь все в порядке. –

Смежные вопросы