/// <summary> /// Загрузка данных на основе DataRow /// </summary> /// <param name="row">Строка таблицы данных</param> /// <param name="fieldProvider">Провайдер для получения перечня полей</param> /// <param name="originInfo">Информация о списке</param> /// <param name="spSite">Сайт, на котором находятся данные</param> public virtual void LoadDataFromDataRow(DataRow row, BaseFieldsProvider fieldProvider, OriginInfo originInfo, SPSite spSite) { IsNew = false; this._OriginInfo = originInfo; if ((fieldProvider != null) && (fieldProvider.FieldExists(Constants.FieldNamesBaseTypes.Id))) _id = int.Parse((string)row[Constants.FieldNamesBaseTypes.Id]); if ((fieldProvider != null) && (fieldProvider.FieldExists(Constants.FieldNamesBaseTypes.Title))) Title = (string)row[Constants.FieldNamesBaseTypes.Title]; ItemIcon = UrlHelper.GetFileIconUrl(null); }
/// <summary> /// Виртуальный метод для выполнения загрузки других полей в наследниках /// </summary> /// <param name="spItem">Элемент списка</param> /// <param name="columnProvider">Провайдкр для получения перечня полей</param> protected virtual void LoadDataFromSPListItem(SPListItem spItem, BaseFieldsProvider columnProvider) { }
/// <summary> /// Создание нового элемента на основе DataRow /// </summary> /// <param name="row">Строка таблицы данных</param> /// <param name="fieldProvider">Провайдер для получения перечня полей</param> /// <param name="originInfo">Информация о списке</param> /// <param name="spSite">Сайт, на котором находятся данные</param> public ItemRecord(DataRow row, BaseFieldsProvider fieldProvider, OriginInfo originInfo, SPSite spSite) { LoadDataFromDataRow(row, fieldProvider, originInfo, spSite); IsNew = false; }
/// <summary> /// Загрузка данных полей из SPListItem и информации о списке /// </summary> /// <param name="spItem">Элемент списка</param> /// <param name="locationInfo">Информация о списке</param> /// <param name="fieldProvider">Провайдер для получения перечня полей</param> public void LoadData(SPListItem spItem, OriginInfo locationInfo, BaseFieldsProvider columnProvider) { this._OriginInfo = locationInfo; IsNew = false; if (spItem == null) { //LogServiceNS.LoggingManager.GetLogWriter().WriteError("Trying to convert empty sharepoint item to type:" + this.GetType()); UlsLogging.LogInformation("Trying to convert empty sharepoint item to type:" + this.GetType()); throw new NullReferenceException("spItem"); } InitBaseFields(spItem); if (columnProvider == null) { LoadDataFromSPListItem(spItem); } else { LoadDataFromSPListItem(spItem, columnProvider); } }