Beispiel #1
0
        /// <summary>
        /// Creates a document object from the specified document contract.
        /// </summary>
        /// <param name="context"></param>
        /// <param name="contract"></param>
        /// <returns></returns>
        public static TestDocument Create(DocumentLibraryContext context, DocumentContract contract)
        {
            TestDocument document = new TestDocument()
            {
                TestDocumentId = SequentialGuid.NewGuid(),
                Application    = contract.Application,
                AppVersion     = contract.AppVersion,
                Author         = contract.Author,
                AuthorType     = contract.AuthorType,
                ColorMode      = contract.ColorMode,
                DefectId       = contract.DefectId,
                FileName       = contract.FileName,
                FileSize       = contract.FileSize,
                FileType       = contract.FileType,
                Notes          = contract.Notes,
                Orientation    = contract.Orientation,
                Pages          = contract.Pages,
                SubmitDate     = contract.SubmitDate,
                Submitter      = contract.Submitter,
                Tag            = contract.Tag,
                Vertical       = contract.Vertical,
            };

            TestDocumentExtension extension = context.TestDocumentExtensions.FirstOrDefault(x => x.Extension.Equals(contract.Extension));

            document.TestDocumentExtension = extension;

            return(document);
        }
        private void add_Button_Click(object sender, EventArgs e)
        {
            var permission = new FileIOPermission(FileIOPermissionAccess.AllAccess, GlobalSettings.Items[Setting.DocumentLibraryServer]);

            try
            {
                permission.Demand();
            }
            catch (SecurityException)
            {
                MessageBox.Show("You do not have authorization to save documents to the STB Document Server.  Please contact your administrator.", "Unauthorized Access", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                return;
            }

            string fileName = string.Empty;

            using (OpenFileDialog dialog = new OpenFileDialog())
            {
                dialog.DereferenceLinks   = false;
                dialog.AutoUpgradeEnabled = false;
                dialog.Multiselect        = false;
                dialog.AddExtension       = true;
                dialog.CheckFileExists    = false;
                dialog.CheckPathExists    = false;
                dialog.DefaultExt         = "stb";
                dialog.Filter             = "Word Documents|*.doc;*.docx|Excel Worksheets|*.xls;*.xlsx;*.xslm|PowerPoint Presentations|*.ppt;*.pptx|Office Files|*.doc;*.docx;*.xls;*.xlsx;*.ppt;*.pptx|Adobe PDF Files|*.pdf|Text Documents|*.txt|Images|*.jpg;*.jpeg;*.png;*.bmp;*.tif|All Files|*.*";
                dialog.Title    = "Add Test Document to Repository";
                dialog.ShowHelp = false;

                if (dialog.ShowDialog() == DialogResult.OK)
                {
                    fileName = dialog.FileName;

                    TestDocumentExtension extension = null;
                    string extValue = Path.GetExtension(fileName).ToUpper().Replace(".", "");
                    extension = _context.TestDocumentExtensions.FirstOrDefault(x => x.Extension.Equals(extValue));
                    if (extension == null)
                    {
                        MessageBox.Show("The selected file is not a supported format", "Unsupported File Format", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                        return;
                    }

                    TestDocument document = new TestDocument()
                    {
                        TestDocumentExtension = extension,
                        Submitter             = Environment.UserName,
                        Vertical       = null,
                        FileName       = Path.GetFileName(fileName),
                        TestDocumentId = SequentialGuid.NewGuid(),
                        Orientation    = "Portrait",
                        ColorMode      = "Mono"
                    };

                    GetFileStatistics(document, fileName);

                    if (EditEntry(document) == DialogResult.OK)
                    {
                        _addedDocumentPath.Add(document.TestDocumentId, fileName);
                        AddDocument(document);
                    }
                }
            }
        }