コード例 #1
0
        public void addFile(HttpPostedFileBase file, user user, string source)
        {
            var          fileName = Path.GetFileName(file.FileName);
            MemoryStream target   = new MemoryStream();

            file.InputStream.CopyTo(target);
            byte[] data = target.ToArray();

            ViniSandbox.Models.file f = new ViniSandbox.Models.file();
            //f.analyzed = true;
            f.date   = DateTime.Now;
            f.name   = fileName;
            f.source = source;

            string md5 = MD5Helper.ByteToMD5(data);

            file_detail fd = db.file_detail.FirstOrDefault(p => p.md5 == md5);

            if (fd == null)
            {
                fd          = new file_detail();
                fd.md5      = md5;
                fd.data     = data;
                fd.analyzed = false;
            }

            user.files.Add(f);
            f.user        = user;
            f.file_detail = fd;
            fd.files.Add(f);

            db.SaveChanges();
        }