示例#1
0
        public Data Handle(Data data)
        {
            if (data.SelectedText != null)
            {
                data.SelectedText = data.SelectedText.Trim();
            }

            data.OutputFileFullPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + Path.DirectorySeparatorChar + "ClassDependencyView.dgml";

            var assemblySearchDirectoryPath = data.AssemblySearchDirectoryPath ?? BinFolderPaths.ServerBin + "," + BinFolderPaths.ClientBin;

            var typeDefinition = TryToFindDefinitionAutomaticly(data);

            if (typeDefinition == null)
            {
                var typeFullName = UserIteraction.FindType(assemblySearchDirectoryPath);
                if (typeFullName.IsNullOrWhiteSpace())
                {
                    data.ErrorMessage = "Bir class seçilmelidir.";
                    return(data);
                }

                typeDefinition = LastUsedTypes.Value.First(t => t.FullName == typeFullName).Definition;
            }

            data.DgmlFileContent = new GraphCreator().CreateGraph(typeDefinition);

            new FileInfo(data.OutputFileFullPath).Delete();

            File.WriteAllText(data.OutputFileFullPath, data.DgmlFileContent);

            return(data);
        }
示例#2
0
 public virtual string GetReturnTypeNameFromUser()
 {
     return(UserIteraction.FindType(BinFolderPaths.ServerBin));
 }