Что такое контракт данных (класс свойств) и наблюдаемая коллекция
-
20-08-2019 - |
Вопрос
Что такое контракт данных (класс свойств) и наблюдаемая коллекция, когда, где и почему их следует использовать в контексте silverlight, пожалуйста, объясните подробно с примерами
++ Спасибо и с уважением Миту Чоудхари
Решение
Другие советы
Если вам нужны определенные данные из базы данных или с сервера, то приложение SL зависит от службы WCF (или веб-службы).
Сейчас же.если вы используете службу WCF, то, если вы хотите отправить какие-либо данные, отличные, скажем, от string, int или других типов данных, вам нужно создать контракт с данными, а затем вы можете использовать этот класс в качестве возвращаемого типа любой функции, которая вызывается как operation contract
Наблюдаемая коллекция - это тип коллекции, представленный в .Net 3.0, преимущество ее использования заключается в том, что если вы свяжете ее с datagrid и если вы разрешили пользователю изменять значение коллекций, то это будет автоматически отражено в datagrid (что-то вроде привязки к двум путям)
итак, в двух словах
Свойство пользовательского класса = элемент данных Пользовательский класс = DataContract
Функция = OperationContract Класс обслуживания = ServiceContract
[DataContract]
public class LOVMetaData
{
public LOVMetaData(decimal LId, string LHeader, string sql, bool selMode, string conString)
{
LOVId = LId; LOVHeader = LHeader; BasicSQL = sql; DefaultSelectionMode = selMode; ConnectionString = conString;
}
[DataMember]
public decimal LOVId { get; set; }
[DataMember]
public string LOVHeader { get; set; }
[DataMember]
public string BasicSQL { get; set; }
[DataMember]
public bool DefaultSelectionMode { get; set; }
[DataMember]
public string ConnectionString { get; set; }
}
[OperationContract]
public List<LOVMetaData> GetListofLOV(string filterString)