#asp.net #wcf
#asp.net #wcf
Вопрос:
Я не хочу, чтобы мой класс отображался на стороне пользователя, который использует мою службу WCF, но его нужно сериализовать, с помощью какого атрибута мне нужно украсить свой класс для достижения этой функциональности ….
Я думаю, что атрибут [serializable], причина, по которой я не уверен, есть ли атрибут в WCF для достижения той же функциональности…….
Ответ №1:
Вы можете использовать атрибуты DataContract
и DataMember
тому подобное в этом примере:
[DataContract(Name = "Account", Namespace = "http://mynamespace.schema")]
public class Account
{
[DataMember(IsRequired = true)]
public string Username { get; set; }
[DataMember(IsRequired = false)]
public string Password { get; set; }
}
Комментарии:
1. Мы будем использовать этот атрибут, когда нам нужно, чтобы наш класс был сериализован и доступен (будет отображаться в intellisence) на стороне клиента, но мой класс не должен быть доступен для пользователя, и его необходимо сериализовать……. Не могли бы вы дать решение для этого
2. @Harishkakani используйте шаблон DTO для передачи данных с сервера на клиент и отображения ваших внутренних классов данных в классах DTO
Ответ №2:
вы можете использовать DataContractAttribute
Комментарии:
1. Мы будем использовать этот атрибут, когда нам нужно, чтобы наш класс был сериализован и доступен (будет отображаться в intellisence) на стороне клиента, но мой класс не должен быть доступен для пользователя, и его необходимо сериализовать……. Не могли бы вы дать решение для этого