示例#1
0
        static string GetBackingStoreName(MonoDevelop.Projects.Dom.IProperty property)
        {
            string baseName = char.ToLower(property.Name[0]) + property.Name.Substring(1);
            int    number   = -1;
            IType  type     = property.DeclaringType;

            if (type != null)
            {
                List <IMember> members;
                do
                {
                    number++;
                    members = type.SearchMember(GenNumberedName(baseName, number), true);
                } while (members != null && members.Count > 0);
            }

            return(GenNumberedName(baseName, number));
        }
        string RetrieveBackingStore(MonoDevelop.Refactoring.RefactoringOptions options, MonoDevelop.Refactoring.INRefactoryASTProvider astProvider, MonoDevelop.Projects.Dom.IProperty property)
        {
            ICSharpCode.NRefactory.Ast.CompilationUnit compilationUnit = astProvider.ParseFile(options.Document.TextEditor.Text);
            PropertyVisitor visitor = new PropertyVisitor(property);

            compilationUnit.AcceptVisitor(visitor, null);
            return(visitor.BackingStoreName);
        }