检查已编译程序集的内容

时间:2014-06-12 15:58:10

标签: c# .net system.reflection ildasm

我希望有人能够指出我正确的方向。我们正在将数据库中的一些字段从int转换为bigint。这意味着我们需要更新代码库中从int到long的相应字段。问题是我们的代码库是MASSIVE。我们有数百个项目,手动搜索它们将是乏味的。所以我想构建一个应用程序,当提供程序集时,可以搜索特定字符串的所有代码(在本例中为字段名称)。我已经使用反射来调用方法并获取属性值等但是我可以使用它来搜索已编译程序集的实际代码中的值吗?值可以是任何东西 - 属性,常量,方法等。我也看过ildasm但它似乎没有为我提供搜索特定字符串值的方法。有什么想法吗?

2 个答案:

答案 0 :(得分:1)

有几种产品可以为您做到这一点:

红门反射器(http://www.red-gate.com/products/dotnet-development/reflector/),付费

Telerik的JustDecompile(http://www.telerik.com/products/decompiler.aspx),免费

JetBrains的' dotPeek(http://www.jetbrains.com/decompiler/),免费

我主要使用Reflector的习惯是因为1.)我前一段时间付了代价而且2.)我一直在使用它因为它是免费的,所以很难打破。它还允许您将程序集直接导出到源文件,您可以从那里对其进行操作。

答案 1 :(得分:0)

您可以使用Reflector搜索装配体内部。

http://www.red-gate.com/products/dotnet-development/reflector/