在“ Microsoft.SqlServer.Management.Smo” nuget包中,有一个“ Database”类,该类具有“ InitTableColumns”方法。就像所说的库中的任何方法一样,这个还没有总结。更奇怪的是,互联网上没有任何提及(是的,是的)。
尤其是MSDN Database class页面。
那么,有人知道它做什么吗?
答案 0 :(得分:1)
通常最好避免使用未记录的方法:)
如果要反编译,可以使用DotPeek(来自JetBrains)或ILSpy之类的程序。
一旦安装了反编译程序,您需要找到要反编译的dll。反编译将采用已编译的.NET代码,并将其转换回应该更易于阅读的C#(请注意,并非总是如此)。
查找dll很容易,您可以将其从已编译代码的bin
文件夹中拉出,也可以通过在VS解决方案资源管理器下拉列表中找到依赖项Microsoft.SqlServer.SqlManagementObjects
来浏览找到它的路径。 -下来,右键单击依赖项,单击“属性”,然后复制在属性窗口中显示的路径。
现在您有了dll的路径,您可以使用反编译器在该路径下打开dll并对其进行反编译。反编译后,反编译程序将允许您浏览dll中包含的名称空间,类和方法。
这就是我对InitTableColumns()
public void InitTableColumns()
{
this.InitChildLevel((Urn)"Table", (ScriptingPreferences)null, false);
this.InitChildLevel((Urn)"Table/Column", (ScriptingPreferences)null, false);
}
随后,我将带领我逐步了解代码,试图了解该库的实现方式!