Exemple #1
0
 //Update Photo in DB
 private void insertPicture()
 {
     if (fileName != "")
     {
         //code from http://stackoverflow.com/questions/779211/programmatically-managing-microsoft-access-attachment-typed-field-with-net
         DBEngine  dbe = new DBEngine();
         Database  db  = dbe.OpenDatabase("PineSpringsPottery.accdb", false, false, "");
         Recordset rs  = db.OpenRecordset("SELECT * FROM PATTERN WHERE PATTERN.PatternNo = " + currentPattern.patternNo, RecordsetTypeEnum.dbOpenDynaset, 0, LockTypeEnum.dbOptimistic);
         rs.MoveFirst();
         rs.Edit();
         Recordset2 rs2 = (Recordset2)rs.Fields["PatternPicture"].Value;
         //delete previous pics
         if (rs2.RecordCount != 0)
         {
             rs2.Delete();
         }
         //if not just deleting previous, add new
         if (fileName != "delete")
         {
             rs2.AddNew();
             Field2 f2 = (Field2)rs2.Fields["FileData"];
             f2.LoadFromFile(fileName);
             rs2._30_Update();
         }
         rs2.Close();
         rs._30_Update();
         rs.Close();
     }
 }
        private List <string> ExportFilesFromRecordset(Recordset2 rstAttach)
        {
            var result = new List <string>();

            while (!rstAttach.EOF)
            {
                var    fileName = $"{tempFolder}\\{rstAttach.Fields["FileName"].Value}";
                Field2 fld      = (Field2)rstAttach.Fields["FileData"];
                fld.SaveToFile(fileName);
                result.Add(fileName);
                rstAttach.MoveNext();
            }

            return(result);
        }
    private void Form1_Load(object sender, EventArgs e)
    {
        DBEngine  dbe    = new DBEngine();
        Database  db     = dbe.OpenDatabase(@"C:\Users\Public\AttachmentsDB.accdb");
        Recordset rsMain = db.OpenRecordset(
            "select solution from tab2 where id = 1",
            RecordsetTypeEnum.dbOpenSnapshot);
        Recordset2 rsAttach  = rsMain.Fields["solution"].Value;
        Field2     fldAttach = (Field2)rsAttach.Fields["FileData"];

        tempFileName = System.IO.Path.GetTempPath() + "\\" + rsAttach.Fields["FileName"].Value;
        try
        {
            System.IO.File.Delete(tempFileName);
        }
        catch { }
        fldAttach.SaveToFile(tempFileName);
        rsAttach.Close();
        rsMain.Close();
        db.Close();
        img = Image.FromFile(tempFileName);
        pictureBox1.Image = img;
    }
Exemple #4
0
        public static Recordset2 GetRecordset2(string fieldName, Recordset recordset)
        {
            Recordset2 rstAttach = recordset.Fields[fieldName].Value;

            return(rstAttach);
        }
        static void Main(string[] args)
        {
            //'C:\Users\niraj\Documents\Civictrack\XML_Reader\XML_Reader\bin\Debug\EdmontonManning.xml
            //XmlDataDocument xmldoc = new XmlDataDocument();
            //XmlNodeList xmlnode;
            //int i = 0;
            //string str = null;
            //FileStream fs = new FileStream("EdmontonManning.xml", FileMode.Open, FileAccess.Read);
            //xmldoc.Load(fs);
            //xmlnode = xmldoc.GetElement;sByTagName("Table1");
            //for (i = 0; i <= xmlnode.Count - 1; i++)
            //{
            //    xmlnode[i].ChildNodes.Item(0).InnerText.Trim();
            //    str = xmlnode[i].ChildNodes.Item(0).InnerText.Trim() + "  " + xmlnode[i].ChildNodes.Item(1).InnerText.Trim() + "  " + xmlnode[i].ChildNodes.Item(2).InnerText.Trim();

            //    Console.WriteLine(str);
            //    Console.ReadLine();

            //}

            var       dbe     = new DBEngine();
            Database  db      = dbe.OpenDatabase(@"ACCESDATA_BASE_PDF");
            Recordset rstMain = db.OpenRecordset(
                "SELECT Document FROM Table1 WHERE ID=1017",
                RecordsetTypeEnum.dbOpenSnapshot);
            Recordset2 rstAttach = rstMain.Fields["Document"].Value;
            Field2     fld       = (Field2)rstAttach.Fields["FileData"];

            fld.SaveToFile(@"filename_full_path.pdf");
            //while ((!"Document1.pdf".Equals(rstAttach.Fields["FileName"].Value)) && (!rstAttach.EOF))
            //{
            //    rstAttach.MoveNext();
            //}
            //if (rstAttach.EOF)
            //{
            //    Console.WriteLine("Not found.");
            //}
            //else
            //{
            //    Field2 fld = (Field2)rstAttach.Fields["FileData"];
            //    fld.SaveToFile(@"C:\Users\Gord\Desktop\FromSaveToFile.pdf");
            //}
            db.Close();


            //XmlDocument docu = new XmlDocument();
            //docu.Load("Test.xml");
            //XmlNodeList nodeList = docu.GetElementsByTagName("FileData");
            //string filedata = string.Empty;
            //foreach (XmlNode node in nodeList)
            //{
            //    filedata = node.InnerText;


            //    byte[] binaryData = Encoding.UTF8.GetBytes(filedata);
            //    //File.WriteAllBytes(@"C:\textxml.pdf", binaryData);


            //    BinaryWriter writer = new BinaryWriter(File.Open(@"C:\Users\niraj\Documents\Civictrack\textxml1.pdf", FileMode.Create));
            //    writer.Write(filedata);
            //    //string s = Encoding.UTF8.GetString(binaryData);

            //    Console.WriteLine(filedata);
            //    break;
            //}
            Console.ReadLine();
        }