【问题标题】:Is it possible to get all references of a property in C#?是否可以在 C# 中获取属性的所有引用?
【发布时间】:2020-07-14 03:21:03
【问题描述】:

我想编写一个脚本来显示类属性的所有引用(类似于在 Visual Studio 中按 F12)。

它应该在 powershell 中运行或作为 C# .net 控制台应用程序运行。

脚本的主要任务是删除DataContext中未使用的DataModel。

非常感谢!

【问题讨论】:

  • 不确定您想要什么,但请尝试按F12
  • 我想在脚本中执行此操作以获取代码中的所有引用。
  • 我怀疑你需要使用 Roslyn 并通过它的 AST 来查找引用:这是编译器没有运行时的信息。
  • 该脚本应该在哪里运行?您是否正在开发 Visual Studio 扩展 (vsix)?还是应该分析您的代码的外部工具?
  • 嗨,Noah,我注意到您的问题似乎已得到解答,但您的问题有很多困惑。您能否更新您的问题以更清楚地了解脚本的类型?也许有一个你想找到这些参考的例子?谢谢!

标签: c# asp.net .net visual-studio reflection


【解决方案1】:

看来你想用反射来获取一个类的引用。

我在控制台应用程序中创建了一个代码示例。你可以看看它是否对你有用。

class Program
    {
        static void Main(string[] args)
        {
            Student stu = new Student();
            Type type = stu.GetType();
            var members = type.GetMembers().ToList();
            foreach (var item in members)
            {
                Console.WriteLine(item);
            }

        }
    }


    public class Student
    { 
        public string Name { get; set; }

        public int Age { get; set; }

        public void SayHello(string Name)
        {
            Console.WriteLine("Hello , I am {0}",Name);
        }

        public int ClassID { get; set; }



    }

结果:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-22
    • 2016-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-09
    相关资源
    最近更新 更多