powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
19 сообщений из 19, страница 1 из 1
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39757543
Aleksey V.P.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коллеги, помогите, пожалуйста, советом. Есть wcf rest точка, которая получает в content http запроса xml. Проблема заключается в том, что конечный десериализуемый экземпляр оказывается без некоторых членов.

Код java клиент
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
@XmlRootElement(name = "TestItem")
@XmlAccessorType(XmlAccessType.FIELD)
public class TestItem implements Serializable{
    
    private static final long serialVersionUID = 1L;
    
    @XmlElement(name="Field1")
    private String field1;
    
    @XmlAttribute(name="attrib1")
    private String attrib1;
    
    @XmlElement(name="Field2")
    private TestItem2 field2;
    
    @XmlElementWrapper(name="Items")
    @XmlElement(name = "Item")
    private List<TestItem2> items;
}



Входящий xml (в wcf rest EndPoint)
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
<TestItem attrib1="test attrib">
    <Field1>test field 1</Field1>
    <Field2><Name>test name</Name></Field2>
    <Items>
        <Item><Name>test 1</Name></Item>
        <Item><Name>test 2</Name></Item>
    </Items>
</TestItem>



Код c# сервер
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
[DataContract(Name = "TestItem", Namespace = "")]
[XmlSerializerFilter]
[XmlRoot(Name="TestItem")]
public class TestItem
{
    [DataMember(Name = "Field1")]
    [XmlElement(Name = "Field1")]
    public string Field1 {get;set;}

    [DataMember(Name = "attrib1")]
    [XmlAttribute(AttributeName="attrib1")]
    public string Attrib1 {get;set;}

    [DataMember(Name = "Field2")]
    [XmlElement(Name="Field2")]
    public TestItem2 Field2 {get;set;}

    [DataMember(Name = "Items")]
    [XmlArray(Name = "Items")]
    [XmlArrayItem(Name = "Item")]
    public IList<TestItem2> Items {get;set;} = new List<TestItem2>();
}


Пока проблема заключается в том, что член Field2 после десериализации пуст ( = null).
...
Рейтинг: 0 / 0
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39757553
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksey V.P.,
Где тесты и код получения?
Где текст ошибки?
...
Рейтинг: 0 / 0
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39757555
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksey V.P.Входящий xml (в wcf rest EndPoint)
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
<TestItem attrib1="test attrib">
    <Field1>test field 1</Field1>
    <Field2><Name>test name</Name></Field2>
    <Items>
        <Item><Name>test 1</Name></Item>
        <Item><Name>test 2</Name></Item>
    </Items>
</TestItem>


Если сервер отдает, тогда в методе сервера заполните и отдайте клиенту Класс.
...
Рейтинг: 0 / 0
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39757556
Aleksey V.P.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123,

Где ошибку смотреть, если не секрет? Есть экземпляр TestItem с пустым полем Field2 на входе в метод обработчика.
...
Рейтинг: 0 / 0
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39757557
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Net4
?
...
Рейтинг: 0 / 0
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39757558
Aleksey V.P.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Aleksey V.P.Входящий xml (в wcf rest EndPoint)
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
<TestItem attrib1="test attrib">
    <Field1>test field 1</Field1>
    <Field2><Name>test name</Name></Field2>
    <Items>
        <Item><Name>test 1</Name></Item>
        <Item><Name>test 2</Name></Item>
    </Items>
</TestItem>


Если сервер отдает, тогда в методе сервера заполните и отдайте клиенту Класс.

Сервер получает post запрос, в теле запроса xml. Сервер десериализует xml и дёргает метод класса параметром служит десериализованный экземпляр TestItem.
...
Рейтинг: 0 / 0
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39757561
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksey V.P.Сервер получает post запрос, в теле запроса xml. Сервер десериализует xml и дёргает метод класса параметром служит десериализованный экземпляр TestItem.в 4.5 wcf на таком низком уровне не работают.
Устарело.
Может у тебя из за java?
Тогда делай тесты и пример.
...
Рейтинг: 0 / 0
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39757562
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksey V.P.,
Ну и REST делают не с WCF, а простым веб сервером с json.
С wcf делают SOAP.
...
Рейтинг: 0 / 0
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39757563
Aleksey V.P.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Aleksey V.P.Сервер получает post запрос, в теле запроса xml. Сервер десериализует xml и дёргает метод класса параметром служит десериализованный экземпляр TestItem.в 4.5 wcf на таком низком уровне не работают.
Устарело.
Может у тебя из за java?
Тогда делай тесты и пример.

Не, с java порядок. В трассировке wcf xml нормальный приходит, как надо, вот только почему-то десериализатор в c# не хочет вложенные классы нормально десериализовать :-( С сериализатором (ответы) таких проблем нету.
...
Рейтинг: 0 / 0
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39757599
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksey V.P.Не, с java порядок.ну вы же в публичный форум написали.
Значит за 10 мин делаете шарп клиент и проверяете это утверждение.
Aleksey V.P.десериализаторуже писал выше - версия 4.5 сериализатор автоматический и работать напрямую с xml дурной тон.
...
Рейтинг: 0 / 0
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39759290
gpu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksey V.P.,
Курить здесь>
Код: xml
1.
<Field2><Name>test name</Name></Field2>
...
Рейтинг: 0 / 0
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39759563
Aleksey V.P.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коллеги, спасибо всем за советы. Разобрался. Надо было добавить атрибут
Код: c#
1.
[XmlSerializerFormat] 


в интерфейс описание сервиса.
...
Рейтинг: 0 / 0
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39759588
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aleksey V.P.Коллеги, спасибо всем за советы. Разобрался. Надо было добавить атрибут
Код: c#
1.
[XmlSerializerFormat] 



в интерфейс описание сервиса.
хммм. Может это для 4-ки версии?
Для 4.5 должно быть этого достаточно:
Код: c#
1.
2.
3.
4.
5.
[DataContract(Namespace="http://example.com/eg2")]
public class MyClass {
  [DataMember]
  public string MyString { get; set; }
}
...
Рейтинг: 0 / 0
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39759724
256k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Aleksey V.P.,
Ну и REST делают не с WCF, а простым веб сервером с json.
С wcf делают SOAP.

Пётр, не надо так категорично, и порой даже в чём-то смешно
...
Рейтинг: 0 / 0
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39759741
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
256k,
Продолжай флудить. У тебя имя Петр 356 раз).
...
Рейтинг: 0 / 0
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39759816
256k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123256k,
Продолжай флудить. У тебя имя Петр 356 раз).

ладно, П., согласен.
Тогда не надо нести фигню, например

"Ну и REST делают не с WCF, а простым веб сервером с json.
С wcf делают SOAP"
...
Рейтинг: 0 / 0
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39759854
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
256k,
"Ваше мнение очень важно для нас" (с)
...
Рейтинг: 0 / 0
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39759971
256k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123256k,
"Ваше мнение очень важно для нас" (с)

ожесточённо лайкнул
...
Рейтинг: 0 / 0
Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
    #39760088
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Aleksey V.P.,
Ну и REST делают не с WCF, а простым веб сервером с json.
С wcf делают SOAP.
И с JSON делают WCF, и прекрасно работает, и в документации расписано как.
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Помогите советом, пожалуйста (wcf, .Net4, rest, xml)
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]