Exemple #1
0
        public bool IsValid()
        {
            if (RawFile != null)
            {
                Filename = Filename ?? RawFile.FileName;
                using (var stream = new MemoryStream())
                {
                    RawFile.CopyTo(stream);
                    FileBytes = stream.ToArray();
                    var data  = Convert.ToBase64String(FileBytes);
                    var index = data.LastIndexOf("base64", StringComparison.Ordinal);
                    Data = index == -1 ? data : data.Substring(index + 7);
                }
            }

            if (string.IsNullOrEmpty(FileType))
            {
                if (!string.IsNullOrEmpty(Filename))
                {
                    FileType = Path.GetExtension(Filename).ToLower();
                }

                if (string.IsNullOrEmpty(FileType))
                {
                    var match = Regex.Match(Data, "data:(.*?);");
                    if (!match.Success)
                    {
                        return(false);
                    }

                    FileType = match.Groups[1].Value;
                }
            }

            if (string.IsNullOrEmpty(FileType))
            {
                return(false);
            }

            return(true);
        }