示例#1
0
        public static IDocument CreateDocumentFromFile(string filename)
        {
            IDocument document;

            if (!FDocuments.TryGetValue(filename, out document))
            {
                var location = new Uri(filename);

                var fileExtension = Path.GetExtension(filename);
                switch (fileExtension)
                {
                case ".cs":
                    document = new CSDocument(filename, location);
                    break;

                case ".fx":
                case ".fxh":
                case ".xx":
                    document = new FXDocument(filename, location);
                    break;

                default:
                    document = new TextDocument(filename, location);
                    break;
                }

                FDocuments[filename] = document;

                document.Disposed += document_Disposed;
            }

            return(document);
        }
示例#2
0
 public FXSubNodeCreator(
     FXDocument fxDocument)
 {
     _fxDocument = fxDocument.EnforceNotNull(nameof(fxDocument));
 }