public void GetSPListItemData(SPListItem spItem)
        {
            //base.Init(spItem, AttachmentsLoadMode.Short);
            ID = spItem.GetFieldIntValue(ListItemDefaultFields.ID);
            Title = spItem.GetFieldStringValue(ListItemDefaultFields.Title);
            GUID = spItem.GetFieldGuidValue(ListItemDefaultFields.GUID);
            Created = spItem.GetFieldDateTimeValue(ListItemDefaultFields.Created);
            CreatedBy = spItem.GetFieldUserValueOrEmpty(ListItemDefaultFields.CreatedBy);
            Modified = spItem.GetFieldDateTimeValue(ListItemDefaultFields.Modified);
            ModifiedBy = spItem.GetFieldUserValueOrEmpty(ListItemDefaultFields.ModifiedBy);
            ContentTypeId = Convert.ToString(spItem.ContentTypeId);
            ContentType = spItem.ContentType.Name;
            SPContentTypeCollection ctsParentList = spItem.ParentList.ContentTypes;
            foreach (SPContentType ct in ctsParentList)
            {
                UlsLogging.LogInformation("SPContentType Name: {0} Id: {1}", ct.Name, Convert.ToString(ct.Id));
                //ContentTypes.Add(ct.Name, Convert.ToString(ct.Id));
            }
            if (spItem.ModerationInformation != null)
            {
                ModerationStatus = spItem.ModerationInformation.Status;
                ModerationComments = Convert.ToString(spItem.ModerationInformation.Comment);
            }
            //ListID = spItem.ParentList.ID;
            //ListTitle = spItem.ParentList.Title;
            //WebID = spItem.Web.ID;
            //WebUrl = spItem.Web.Url;
            UIVersionString = spItem[ListItemDefaultFields.UIVersionString];

            OriginInfo OriginInfo = new OriginInfo();
            OriginInfo.GetData(spItem.ParentList);
        }
        /// <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>
 /// Создание нового элемента на основе 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>
 /// Создание нового элемента на основе элемента списка и информации о списке
 /// </summary>
 /// <param name="spItem">Элемент списка</param>
 /// <param name="originInfo">Информация о списке</param>
 public ItemRecord(SPListItem spItem, OriginInfo originInfo)
 {
     LoadData(spItem, originInfo);
     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);
     }
 }
 /// <summary>
 /// Загрузка данных полей из SPListItem и информации о списке
 /// </summary>
 /// <param name="spItem">Элемент списка</param>
 /// <param name="locationInfo">Информация о списке</param>
 public void LoadData(SPListItem spItem, OriginInfo locationInfo)
 {
     LoadData(spItem, locationInfo, null);
 }