Как исправить ошибку:" не удалось найти информацию о схеме для атрибута/элемента", создав схему
у меня есть приложение windows forms, написанное в VS2010 с C# и получить следующие ошибки в app.config
file:
Message 4 Could not find schema information for the attribute 'name'
Message 8 Could not find schema information for the attribute 'name'
Message 12 Could not find schema information for the attribute 'name'
Message 5 Could not find schema information for the attribute 'serializeAs'
Message 15 Could not find schema information for the element 'CCP_Utility.Settings1'
Message 2 Could not find schema information for the element 'CCP_Utility.Properties.Settings'
Message 3 Could not find schema information for the element 'setting'
Message 1 Could not find schema information for the element 'userSettings'
Message 6 Could not find schema information for the element 'value'
что мне нужно изменить в коде, чтобы исправить эту проблему? Где я могу редактировать то, что находится в CCP_Utility.Settings1
и CCP_Utility.Properties.Settings
?
здесь app.config
код:
<configuration>
<configSections>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="CCP_Utility.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
<section name="CCP_Utility.Settings1" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
</sectionGroup>
</configSections>
<userSettings>
<CCP_Utility.Properties.Settings>
<setting name="SourceDir" serializeAs="String">
<value />
</setting>
<setting name="TargetDir" serializeAs="String">
<value />
</setting>
<setting name="CorpID" serializeAs="String">
<value />
</setting>
</CCP_Utility.Properties.Settings>
<CCP_Utility.Settings1>
<setting name="sourceDir" serializeAs="String">
<value />
</setting>
<setting name="targetDir" serializeAs="String">
<value />
</setting>
</CCP_Utility.Settings1>
</userSettings>
</configuration>
10 ответов:
обновление сентябрь 2015
Этот ответ продолжает получать upvotes, поэтому я собираюсь оставить его здесь, так как это кажется полезным для некоторых людей, но, пожалуйста, проверьте другие ответы от @reexmonkey и @Pressacco первый. Они могут обеспечить лучшие результаты.ОРИГИНАЛЬНЫЙ ОТВЕТ
Дайте этому шанс:
- в Visual Studio откройте приложение.config или web.конфигурационный файл.
- посмотреть Меню " XML "и выберите"создать схему". Это действие должно создать новый файл с именем " приложение.xsd " или " web.XSD-файл."
- Сохраните этот файл на свой диск.
- вернитесь к своему приложению.config или web.конфиг и в самом редактировать окно щелкните правой кнопкой мыши и выберите Свойства. Оттуда, убедитесь, что xsd-файл, который вы создали, указанный в свойстве схемы. Если его там нет, добавьте его.
Это должно привести к тому, что эти сообщения исчезнуть.
Я сохранил свою паутину.xsd в корне моей веб-папки (которая может быть не лучшим местом для нее, но только для демонстрационных целей) и мое свойство Schemas выглядит так:
"C:\Program файлы (x86)\Microsoft Визуальная Студия 10.0\xml\Schemas\DotNetConfig.xsd "" Web.xsd"
самый быстрый, самый простой ленивый способ решить проблему:
- щелкните правой кнопкой мыши на значке проекта в обозревателе решений и выберите "Свойства".
- перейдите на вкладку "приложение" и выберите более раннюю целевую платформу .NET.
- Сохранить изменения.
- перейдите на вкладку "приложение" и выберите начальную целевую платформу .NET.
- Сохранить изменения => проблема решена!
XSD входит в состав EntLib 5 и устанавливается в каталог схемы Visual Studio. В моем случае его можно найти по адресу:
C:\Program Files (x86)\Microsoft Visual Studio 10.0\Xml\Schemas\EnterpriseLibrary.Configuration.xsd
контекст
- Visual Studio 2010
- Корпоративная Библиотека 5
ШАГИ ПО УДАЛЕНИЮ ПРЕДУПРЕЖДЕНИЙ
- открыть приложение.конфигурация в проекте Visual Studio
- щелкните правой кнопкой мыши в Редакторе XML-документов, выберите "Свойства"
- добавить полное путь к " предприятию-библиотеке.Конфигурация.xsd"
в сторону
стоит повторить, что эти "список ошибок" "сообщения" ("не удалось найти информацию схемы для элемента") видны только при открытии приложения.конфигурационный файл. Если вы "закрываете все документы" и компилируете... никаких сообщений не будет.
Я обнаружил, что в связанном модуле была синтаксическая ошибка, и она не компилировалась - компилятор мне этого не сказал. Просто дал мне ошибку о приложении.конфигурационный материал. VS2010. Как только я исправил синтаксическую ошибку, все было хорошо.
просто: в конструкторе отчетов Visual Studio
1. Откройте отчет в режиме конструктора и удалите набор данных из файла RDLC
2. Откройте Обозреватель решений и удалите фактический (поврежденный) XSD-файл
3. Добавьте набор данных обратно в файл RDLC.
4. Описанная выше процедура создаст новый XSD-файл.
5. Более подробно-ниже.в Visual Studio откройте отчет о файле RDLC в режиме конструктора. Нажмите на отчет, а затем выберите вид, а затем отчет Данные из меню верхней строки. Выберите наборы данных, а затем щелкните правой кнопкой мыши и удалите набор данных из отчета. Затем откройте Обозреватель решений, если он еще не открыт в Visual Studio. Найдите файл XSD (он должен иметь то же имя, что и набор данных, который вы только что удалили из отчета). Теперь вернитесь назад и снова щелкните правой кнопкой мыши на наборе данных отчета и выберите Добавить набор данных . Это создаст новый XSD-файл и запишет свойства набора данных в отчет. Теперь ваше сообщение об ошибке исчезнет и любое недостающие данные теперь будут отображаться в отчетах.
когда это случилось со мной (из ниоткуда), я собирался погрузиться в верхний ответ выше, а затем я решил закрыть проект, закрыть Visual Studio, а затем снова открыть все. Проблема решена. Против бага?
У меня было это в VS 2012, где "имя раздела" было изменено в проекте, и я исправил его, удалив "приложение.config "в проекте, затем щелкните правой кнопкой мыши на проекте в" обозревателе решений", выбрав" Свойства", затем" Настройки", а затем внесите изменения в один из параметров, сохранение и повторное построение. Это создало новое приложение.конфигурация с правильной информацией.
эта ошибка возникает, когда ваш проект ссылается на устаревшие схемы. Использовать Visual Studio для создания новых.
в Visual Studio, выполните следующее:
- открыть
app.config
или .- перейти к и выберите
Create Schema
.это вызовет
app#.xsd
(приложение для Windows) илиweb#.xsd
(сайт) файл (ы) для генерации.
- сохранить вновь созданный xsd файл(ы) в корень проекта.
- открыть свой
App.config
илиweb.config
файл, щелкните правой кнопкой мыши в текстовом редакторе и выберите Свойства и нажмите...
кнопка рядом со значением для схем.- добавьте вновь сгенерированный xsd-файл(ы) с помощью .
- клик
OK
The не удается найти информацию о схеме для атрибута/элемента ошибка(ы) теперь должна быть решенный.
в моем случае у меня была неоднозначная ссылка в моем коде. Я перезапустил Visual Studio и смог увидеть сообщение об ошибке. Когда я решил эту проблему, другая ошибка исчезла.
большая часть того, что я пишу, уже была освещена Pressacco, но это специфично для SpecFlow.
я получал это сообщение для
<specFlow>
элемент и поэтому я добавилspecflow.xsd
файл к решению ответ (С некоторыми изменениями, чтобы позволить<plugins>
элемент).после этого я (как Pressacco), щелкнул правой кнопкой мыши в буфере файла
app.config
и выбранные свойства, и внутриSchemas
, я добавил"specflow.xsd"
до конца. Этот полнотаSchemas
гласит:"C:\Program Files (x86)\Microsoft Visual Studio 12.0\xml\Schemas33\DotNetConfig.xsd" "C:\Program Files (x86)\Microsoft Visual Studio 12.0\xml\Schemas\EntityFrameworkConfig_6_1_0.xsd" "C:\Program Files (x86)\Microsoft Visual Studio 12.0\xml\Schemas\RazorCustomSchema.xsd" "specflow.xsd"