/// <summary> /// 获取细节数据 /// </summary> /// <param name="channelType"></param> /// <returns></returns> public IEnumerable<DDPhotoDetail> SelectGalleryData(DDChannelType channelType, string tableName) { if (_detailDataHelper == null) { _detailDataHelper = new DDPhotoDetailDataHelper(_dbConn); } _detailDataHelper.PhotoDetailTable = tableName; return _detailDataHelper.SelectGalleryData(channelType); }
/// <summary> /// 向内容细节表插入数据 /// </summary> /// <param name="detail"></param> /// <param name="channelType"></param> /// <returns></returns> public bool InsertDataToDetailTable(DDPhotoDetail detail, DDChannelType channelType, string tableName) { if (_detailDataHelper == null) { _detailDataHelper = new DDPhotoDetailDataHelper(_dbConn); } _detailDataHelper.PhotoDetailTable = tableName; return _detailDataHelper.InsertData(detail, channelType); }
/// <summary> /// 获取某个分类的所有细节信息 /// </summary> /// <param name="channelType"></param> /// <returns></returns> public IEnumerable<DDPhotoDetail> SelectGalleryData(DDChannelType channelType) { List<DDPhotoDetail> detailList = null; try { using (SqliteCommand dbCmd = _dbConn.CreateCommand()) { string select_sql = string.Empty; if (channelType == DDChannelType.EDDUnknownChannel) { select_sql = string.Format("SELECT * FROM {0}", PhotoDetailTable); } else { select_sql = string.Format("SELECT * FROM {0} where {1}=@{1};", PhotoDetailTable, GalleryTypeCol); dbCmd.Parameters.Add("@" + GalleryTypeCol, null); dbCmd.Parameters["@" + GalleryTypeCol].Value = channelType.ToString(); } dbCmd.CommandText = select_sql; using (SqliteDataReader reader = dbCmd.ExecuteReader()) { detailList = new List<DDPhotoDetail>(); while (reader.Read()) { DDPhotoDetail detail = new DDPhotoDetail(); detail.PhotoTitle = reader.GetString(2); if (!reader.IsDBNull(3)) { detail.PhotoIntro = reader.GetString(3); } detail.PhotoParentWebUrl = reader.GetString(4); detail.PhotoCoverImageWebUrl = reader.GetString(5); detail.PhotoUGC = new DDPhotoUGC(); if (!reader.IsDBNull(6)) { detail.PhotoUGC.PhotoUploadTime = reader.GetString(6); } if (!reader.IsDBNull(7)) { detail.PhotoUGC.PhotoClickTimes = reader.GetString(7); } if (!reader.IsDBNull(8)) { detail.PhotoUGC.PhotoGoodComments = reader.GetString(8); } detailList.Add(detail); } reader.Close(); reader.Dispose(); } dbCmd.Dispose(); } } catch (Exception) { } return detailList; }
/// <summary> /// 插入一个列表 /// </summary> /// <param name="detailList"></param> /// <param name="channelType"></param> /// <returns></returns> public void InsertDataListToDetailTable(IEnumerable<DDPhotoDetail> detailList, DDChannelType channelType, string tableName) { if (_detailDataHelper == null) { _detailDataHelper = new DDPhotoDetailDataHelper(_dbConn); } _detailDataHelper.PhotoDetailTable = tableName; _detailDataHelper.InsertDataList(detailList, channelType); }
/// <summary> /// 插入一个数据列表 /// </summary> /// <param name="detailList"></param> public void InsertDataList(IEnumerable<DDPhotoDetail> detailList, DDChannelType channelType) { if (detailList != null && channelType != DDChannelType.EDDUnknownChannel) { SqliteTransaction sqlTrans = null; try { using (SqliteCommand dbCmd = _dbConn.CreateCommand()) { sqlTrans = _dbConn.BeginTransaction(); string sql_insert = string.Format("INSERT INTO {0}({1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}, {9}) VALUES(@{1}, @{2}, @{3}, @{4}, @{5}, @{6}, @{7}, @{8}, @{9});", PhotoDetailTable, IdCol, GalleryTypeCol, PhotoTitleCol, PhotoIntroCol, PhotoParentWebUrlCol, PhotoCoverImageWebUrlCol, PhotoUploadTimeCol, PhotoClickTimesCol, PhotoGoodCommentsCol); dbCmd.CommandText = sql_insert; //dbCmd.ExecuteNonQuery(); dbCmd.Parameters.Add("@" + IdCol, null); dbCmd.Parameters.Add("@" + GalleryTypeCol, null); dbCmd.Parameters.Add("@" + PhotoTitleCol, null); dbCmd.Parameters.Add("@" + PhotoIntroCol, null); dbCmd.Parameters.Add("@" + PhotoParentWebUrlCol, null); dbCmd.Parameters.Add("@" + PhotoCoverImageWebUrlCol, null); dbCmd.Parameters.Add("@" + PhotoUploadTimeCol, null); dbCmd.Parameters.Add("@" + PhotoClickTimesCol, null); dbCmd.Parameters.Add("@" + PhotoGoodCommentsCol, null); foreach (var detail in detailList) { dbCmd.Parameters["@" + GalleryTypeCol].Value = channelType.ToString(); dbCmd.Parameters["@" + PhotoTitleCol].Value = detail.PhotoTitle; dbCmd.Parameters["@" + PhotoIntroCol].Value = detail.PhotoIntro; dbCmd.Parameters["@" + PhotoParentWebUrlCol].Value = detail.PhotoParentWebUrl; dbCmd.Parameters["@" + PhotoCoverImageWebUrlCol].Value = detail.PhotoCoverImageWebUrl; dbCmd.Parameters["@" + PhotoUploadTimeCol].Value = detail.PhotoUGC.PhotoUploadTime; dbCmd.Parameters["@" + PhotoClickTimesCol].Value = detail.PhotoUGC.PhotoClickTimes; dbCmd.Parameters["@" + PhotoGoodCommentsCol].Value = detail.PhotoUGC.PhotoGoodComments; dbCmd.ExecuteScalar(); } dbCmd.Dispose(); sqlTrans.Commit(); sqlTrans = null; } } catch (Exception) { if (sqlTrans != null) { sqlTrans.Rollback(); } } } }