2013-11-18 4 views
0

У меня есть XML-файл, из которого я хочу сделать классы C# с помощью инструмента xsd.exe. Но при запуске инструмента, он дает следующее сообщение об ошибкеОшибка в генерации классов C# с использованием xsd.exe

Невозможно добавить вложенную связь или столбец элемента в таблицу, содержащую simplecontent колонку

Я использую это заявление

c:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin>xsd d:\XMLResponse.xml /o:d:\ 

Вышеупомянутый xml - это ответ, поэтому я хочу сделать его класс, чтобы манипулировать этим ответом.

Файл XML настолько длинный, что я не могу вставить его, поэтому я даю ему link. Обмен ссылками - это только ради понимания проблемы и ничего другого.

+0

@Adriano У меня есть уже видел этот вопрос, но я не мог видеть повторяющийся элемент xml с другой структурой в моем xml. –

+0

xsd имеет дальний прицел, он может! :) Попробуйте создать схему вместо кода, ее проще проверить, чем необработанный XML. –

ответ

3

@Adriano Я уже видел этот вопрос, но я не мог видеть повторяющийся элемент xml с другой структурой в моем xml.

Есть две вещи, упомянутые в другом потоке:

1) Ваша проблема заключается в том у вас есть такое же имя элемента с другой структурой, где-то в документе.

2) Похоже, что ваш xml содержит элемент, в котором есть как текстовые дети (простой контент), так и другие дочерние элементы.

После очень быстрой проверки я нашел пример как в вашем XML:

линии 172:

<ConditionValues> ConditionValuesDefinitionType </ConditionValues> 

линии 306 и далее:

<ConditionValues> ConditionValuesType 
    <Condition> ConditionType 
    <DisplayName> string </DisplayName> 
    <ID> int </ID> 
    </Condition> 
    <!-- ... more Condition nodes allowed here ... --> 
    <ConditionHelpURL> anyURI </ConditionHelpURL> 
</ConditionValues> 
+1

+1 за терпение проверить его XML вместо него –

1

Я надеюсь, что это помогает:

using System; 
using System.Collections; 
using System.Collections.Generic; 
using System.Data; 
using System.Diagnostics; 
public class GetCategoryFeaturesResponse 
{ 
string m_Category = ""; 
public string Category { 
    get { return m_Category; } 
    set { m_Category = value; } 
} 

string m_CategoryVersion = ""; 
public string CategoryVersion { 
    get { return m_CategoryVersion; } 
    set { m_CategoryVersion = value; } 
} 

string m_FeatureDefinitions = ""; 
public string FeatureDefinitions { 
    get { return m_FeatureDefinitions; } 
    set { m_FeatureDefinitions = value; } 
} 

string m_SiteDefaults = ""; 
public string SiteDefaults { 
    get { return m_SiteDefaults; } 
    set { m_SiteDefaults = value; } 
} 

string m_UpdateTime = ""; 
public string UpdateTime { 
    get { return m_UpdateTime; } 
    set { m_UpdateTime = value; } 
} 

string m_Ack = ""; 
public string Ack { 
    get { return m_Ack; } 
    set { m_Ack = value; } 
} 

string m_Build = ""; 
public string Build { 
    get { return m_Build; } 
    set { m_Build = value; } 
} 

string m_CorrelationID = ""; 
public string CorrelationID { 
    get { return m_CorrelationID; } 
    set { m_CorrelationID = value; } 
} 

string m_Errors = ""; 
public string Errors { 
    get { return m_Errors; } 
    set { m_Errors = value; } 
} 

string m_HardExpirationWarning = ""; 
public string HardExpirationWarning { 
    get { return m_HardExpirationWarning; } 
    set { m_HardExpirationWarning = value; } 
} 

string m_Timestamp = ""; 
public string Timestamp { 
    get { return m_Timestamp; } 
    set { m_Timestamp = value; } 
} 

string m_Version = ""; 
public string Version { 
    get { return m_Version; } 
    set { m_Version = value; } 
} 
    } 

я проверил нету кода, сгенерированного с помощью этого tool
PS: я удалил XML комментарии он делает инструмент с ума :)

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