Esempio n. 1
0
        /// <summary>
        /// ファイルデータとタグデータを保存します
        /// タグデータの更新は、Delete Insert です。
        /// </summary>
        /// <param name="connection"></param>
        /// <param name="fileData"></param>
        public static void SaveData(SQLiteConnection connection, FileData fileData)
        {
            //既存のファイルデータを取得します
            FileData tempData = null;

            if (fileData.id != 0)
            {
                tempData = FileDataDao.GetData(connection, fileData.id.ToString());
            }

            //ファイルデータを保存します
            if (tempData == null)
            {
                //ファイルデータがないため、Insert します
                FileDataDao.Insert(connection, fileData);

                //追加した詳細データを取得します(タグの追加でidを使用するため)
                tempData    = FileDataDao.GetLastData(connection);
                fileData.id = tempData.id; //IDを設定します
            }
            else
            {
                //ファイルデータがあるため、Update します
                FileDataDao.Update(connection, fileData);
            }

            //タグデータを更新します
            UpdateTag(connection, fileData);
        }
Esempio n. 2
0
        /// <summary>
        /// ファイルデータとタグデータを取得します。
        /// </summary>
        /// <param name="connection"></param>
        /// <param name="d_file_id"></param>
        /// <returns></returns>
        public static FileData LoadData(SQLiteConnection connection, int d_file_id)
        {
            //ファイルデータを取得します
            var fileData = FileDataDao.GetData(connection, d_file_id.ToString());

            if (fileData == null)
            {
                return(null);
            }

            //タグデータを取得します
            fileData._tags = TagDataDao.GetTags(connection, d_file_id);

            return(fileData);
        }