コード例 #1
0
ファイル: Program.cs プロジェクト: wassen/DrioSync
 public void InsertToDB(FilesTable filesTable)
 {
     InsertToDB(new List <FilesTable>()
     {
         filesTable
     });
 }
コード例 #2
0
        public virtual void LoadData(LodFile parent, int count)
        {
            stream.Position = FAT_OFFSET;

            byte[] record = new byte[32];
            for (int i = 0; i < count; i++)
            {
                stream.Read(record, 0, 32);
                FilesTable.Add(new FatRecord(parent, record));
            }
        }
コード例 #3
0
        public void UpdateFileData(string fileTitle, string fileAuthor, string fileContent, string fileTags, DateTime dateTime, string seoTitle, int publishId, string image, int id)
        {
            FilesTable updateFileTable = _filesContext.Files.First(uId => uId.FileID == id);

            updateFileTable.FileTitle   = fileTitle;
            updateFileTable.FileAuthor  = fileAuthor;
            updateFileTable.FileContent = fileContent;
            updateFileTable.FileTags    = fileTags;
            updateFileTable.Date        = dateTime;
            updateFileTable.SeoTitle    = seoTitle;
            updateFileTable.PublishId   = publishId;
            updateFileTable.FileImage   = image;
            _filesContext.SaveChanges();
        }
コード例 #4
0
        public List <FatRecord> Filter(string extension)
        {
            if (extension[0] == '.')
            {
                extension = extension.Substring(1);
            }
            if (extension == "*")
            {
                return(FilesTable.ToList());
            }
            string local = FatRecord.ToggleCase(extension);

            return(FilesTable.Where(fat => fat.Extension == local).ToList());
        }
コード例 #5
0
        public void AddNewRecord(FatRecord record)
        {
            record.Parent = this;

            int index = IndexOf(record.FileName);

            if (index >= 0)
            {
                return;
            }

            if (string.Compare(record.FileName, FilesTable.Last().FileName) == 1)
            {
                FilesTable.Add(record);
            }
            else
            {
                FilesTable.Insert(~index, record);
            }
            FileCount++;
        }
コード例 #6
0
        public void LoadDB()
        {
            uiTree.Clear();

            _connectionString = $"Data Source={Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), @"AIMP\AudioLibrary\Local.db")}";
            using (var conn = new SQLiteConnection(_connectionString))
            {
                conn.Open();
                using (var command = conn.CreateCommand())
                {
                    command.CommandText = "SELECT * FROM TableArtists;";
                    using (SQLiteDataReader reader = command.ExecuteReader())
                    {
                        _artistsTable = new HashTable("TableArtists");
                        _artistsTable.Load(reader);
                        _artists = new Dictionary <string, string>();
                        foreach (var artist in _artistsTable)
                        {
                            _artists.Add(artist.Id.ToString(), artist.Value);
                        }
                    }
                    command.CommandText = "SELECT * FROM TableAlbums;";
                    using (SQLiteDataReader reader = command.ExecuteReader())
                    {
                        _albumsTable = new HashTable("TableAlbums");
                        _albumsTable.Load(reader);
                        _albums = new Dictionary <string, string>();
                        foreach (var album in _albumsTable)
                        {
                            _albums.Add(album.Id.ToString(), album.Value);
                        }
                    }
                    command.CommandText = "SELECT * FROM TableFormats;";
                    using (SQLiteDataReader reader = command.ExecuteReader())
                    {
                        _formatsTable = new HashTable("TableFormats");
                        _formatsTable.Load(reader);
                        _formats = new Dictionary <int, string>();
                        foreach (var format in _formatsTable)
                        {
                            _formats.Add(format.Id, format.Value);
                        }
                    }
                    command.CommandText = "SELECT * FROM TableFiles;";
                    using (SQLiteDataReader reader = command.ExecuteReader())
                    {
                        _filesTable = new FilesTable();
                        _filesTable.Load(reader);
                    }
                }
            }

            _songs = new List <Song>();
            _songs.AddRange(
                from file in _filesTable
                select new DummySong(file.FilePath, file.Title, GetArtist(file.ArtistId), GetAlbum(file.AlbumId), file));

            Util.FindMissing(_songs, out var missingSongs, out var formatChanges);

            if (missingSongs.Any() || formatChanges.Any())
            {
                uiTree.AddPlaylist(new DummyPlaylist("Database"), missingSongs, formatChanges);
            }
        }
コード例 #7
0
        public ActionResult UpdateFilesAdd(HttpPostedFileBase FileImage, bool? chkPublish, FilesTable fileTable)
        {
            var seoMake = Seo.Translate(fileTable.FileTitle);

            string imagePath = fileTable.FileImage;
            int publishId = 0;
            if (FileImage != null)
            {
                imagePath = Path.GetFileName(FileImage.FileName);
                imagePath = seoMake + ".jpg";
                var uploadPath = Path.Combine(Server.MapPath("~/Content/Images/"), imagePath);
                FileImage.SaveAs(uploadPath);


            }

            if (chkPublish == true)
            {

                publishId = 1;

            }

            _modelFiles.UpdateFileData(fileTable.FileTitle, fileTable.FileAuthor, fileTable.FileContent, fileTable.FileTags, DateTime.Now, seoMake, publishId, imagePath, fileTable.FileID);

            return RedirectToAction("Index", "AdmFiles");

        }
コード例 #8
0
        public ActionResult FilesAdd(HttpPostedFileBase Image, HttpPostedFileBase FileStream, bool chkPublish, FilesTable fileTable)
        {
            string filePath = "Dosya Yok!";
            string imagePath = "content-icon.png";
            int publishId = 0;
            var seoMake = Seo.Translate(fileTable.FileTitle);

            if (FileStream != null)
            {
                filePath = Path.GetFileName(FileStream.FileName);


                var uploadPath = Path.Combine(Server.MapPath("~/Content/Files/"), filePath);
                FileStream.SaveAs(uploadPath);

            }

            if (Image != null)
            {
                imagePath = Path.GetFileName(Image.FileName);
                imagePath = seoMake + ".jpg";
                var uploadPath = Path.Combine(Server.MapPath("~/Content/Images/"), imagePath);
                Image.SaveAs(uploadPath);
            }

            if (chkPublish == true)
            {

                publishId = 1;

            }


            _modelFiles.AddFileData(fileTable.FileTitle, fileTable.FileAuthor, fileTable.FileContent,
                    fileTable.FileTags, filePath, DateTime.Now, seoMake, publishId, imagePath);

            return RedirectToAction("Index", "AdmFiles");
        }
コード例 #9
0
 public ModelFiles()
 {
     _filesTable   = new FilesTable();
     _filesContext = new MyWebContext();
 }
コード例 #10
0
 public string[] GetNames()
 {
     return(FilesTable.Select(fat => fat.FileName).ToArray());
 }