我正在使用LoadWithPartialName()加载程序集,但VS告诉我它已过时并使用Load()代替。但是,我找不到任何方便的过载。
有一个Load(字符串),询问“全名”,如果我理解正确的MSDN文档,则包含版本号等内容。
还有一个Load(string,Evidence)接受“显示名称”。问题是我不知道“显示名称”是什么,因为我在第一个函数中使用的“部分名称”似乎不起作用。
那么,应该怎么做呢?
答案 0 :(得分:10)
以下文章解释了为什么它已过时: http://blogs.msdn.com/suzcook/archive/2003/05/30/57159.aspx
底线是:使用Load并为其提供版本号。
答案 1 :(得分:1)
这就是我所做的。作为示例,我正在将“ Microsoft.AnalysisServices”加载到PowerShell中。
C:\Windows\Microsoft.NET\assembly\GAC_32
C:\Windows\Microsoft.NET\assembly\GAC_64
C:\Windows\Microsoft.NET\assembly\GAC_MSIL
v4.0_15.0.0.0__89845dcd8080cc91
现在您可以创建程序集字符串。
[System.Reflection.Assembly]::Load("Microsoft.AnalysisServices, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91")
对于.NET程序集,Culture
始终为neutral
。